
我正在尋找一個 FTP 用戶端,它允許我輕鬆地「上傳自上次上傳以來已修改的檔案」。 (或根據修改日期「同步」目錄。)
我在Ubuntu上。
到目前為止我已經嘗試過 gnome-commander、gftp、午夜指揮官。
(我知道我可以掛載 ftp 檔案系統並使用,cp -u
但我在 FTP 掛載的檔案系統中獲得了很多不好的經驗。)
答案1
我使用 FileZilla,但聽起來你確實想使用 Rsync...而不使用 SSH,儘管你可以使用 lftp。
http://lftp.yar.ru/lftp-man.html
從手冊頁:
mirror [OPTS] [source [target]]
Mirror specified source directory to local target directory.
If target directory ends with a slash, the source base name
is appended to target directory name. Source and/or target
can be URLs pointing to directories.
-c, --continue continue a mirror job if possible
-e, --delete delete files not present at remote site
--delete-first delete old files before transferring new ones
--depth-first descend into subdirectories before transferring files
-s, --allow-suid set suid/sgid bits according to remote site
--allow-chown try to set owner and group on files
--ascii use ascii mode transfers (implies --ignore-size)
--ignore-time ignore time when deciding whether to download
--ignore-size ignore size when deciding whether to download
--only-missing download only missing files
--only-existing download only files already existing at target
-n, --only-newer download only newer files (-c won't work)
--no-empty-dirs don't create empty directories (implies --depth-first)
-r, --no-recursion don't go to subdirectories
--no-symlinks don't create symbolic links
-p, --no-perms don't set file permissions
--no-umask don't apply umask to file modes
-R, --reverse reverse mirror (put files)
-L, --dereference download symbolic links as files
-N, --newer-than=SPEC download only files newer than specified time
--on-change=CMD execute the command if anything has been changed
--older-than=SPEC download only files older than specified time
--size-range=RANGE download only files with size in specified range
-P, --parallel[=N] download N files in parallel
--use-pget[-n=N] use pget to transfer every single file
--loop loop until no changes found
-i RX, --include RX include matching files
-x RX, --exclude RX exclude matching files
-I GP, --include-glob GP include matching files
-X GP, --exclude-glob GP exclude matching files
-v, --verbose[=level] verbose operation
--log=FILE write lftp commands being executed to FILE
--script=FILE write lftp commands to FILE, but don't execute them
--just-print, --dry-run same as --script=-
--use-cache use cached directory listings
--Remove-source-files remove files after transfer (use with caution)
-a same as --allow-chown --allow-suid --no-umask
剩下的我就饒你了。寫一篇中篇小說就夠了。
答案2
我剛發現網站複製它正是我想要的。我剛進入
site myftpsite
server ftp.myftpsite.com
remote /
local /home/aioobe/work/mysite/public
username myuser
password mypass
然後我只需輸入sitecopy --update myftpsite
,它就會根據時間戳“同步”文件。