/docs/scripting
Drive it from cron, with no window at all.
Point it at a plain-text script and it runs headless, prints to stdout, and exits with a status code. Good for backups, CI, and anything you'd rather not click through.
# back up today's exports, mirroring deletions too open my-backup-server lcd /home/me/exports cd /backups/exports mirror /home/me/exports /backups/exports --delete echo backup complete exit
# on a desktop zephyrftp --script=nightly-backup.txt # on a headless box or in CI zephyrftp --script=nightly-backup.txt \ -platform offscreen # 0 = finished 1 = bad script 2 = command failed echo $?
Command reference
| Command | Effect |
|---|---|
| open <site> | Connect using a site saved in Site Manager |
| cd / lcd <path> | Change the remote or local directory |
| get / put <file> | Download or upload, same filename on both sides |
| ls / lls | List the remote or local directory |
| mkdir <path> | Create a directory |
| rm <path> | Delete a file or empty directory |
| mv <old> <new> | Rename, within the current connection |
| mirror <local> <remote> | One-way sync by size and modified time; add --delete to remove files the source no longer has |
| echo / exit | Print a line; end the script |
Scripts never prompt. open only works against a site you've already connected to
once through the window, so its host key is trusted, and that has a stored credential. Anything
else fails immediately with a clear message rather than hanging on a password prompt nobody
will ever see.
Need a private key or an untrusted host first? Getting Started covers the one-time interactive connection that unlocks a site for scripting.