syq Fast, programmable file operations.
Copy, reorganize and remove files—locally or across machines. Resume interrupted transfers, send files to your laptop or run commands there from a server’s remote shell, and script syq using the JSON API or Python SDK. Your laptop needs no SSH server or incoming network port.
Replace server with an SSH hostname or alias you normally connect to, and project with a local directory:
syq cp project --to server --into backup
This creates or updates backup/project in your home directory on the server. To copy the contents of project directly into backup , use --srcs-in :
syq cp --srcs-in project --to server --into backup
Use --dry-run to preview a summary without copying, or --dry-run -v to list the planned changes by path. Existing destination files are updated when needed. Unrelated files stay unless you request --prune .
Start with your usual command, prefixed by syq :
syq rsync -av project/ server:backup/project/ syq rsync -av server:data/ ./data/
Syq supports common rsync options, but uses its own protocol. Rsync filter rules, hard links, ACLs, xattrs, sparse files, and rolling-checksum deltas are not supported. Check rsync compatibility before substituting it in an existing script.