我有一台只有 sftp 访问权限的机器。没有 ssh,没有 shell,没有 rsync。当我使用 /usr/bin/sftp 获取文件时,我可以让它恢复中止的传输吗?
小智 6
您可以使用该选项-a
在get
命令sftp
恢复先前中止下载。
例子:
echo -e "lcd ~/localFolder\nget -ar *" | sftp username@host.com:/some/path
Run Code Online (Sandbox Code Playgroud)
或者写成
sftp username@host.com:/some/path <<EOF
lcd ~/localFolder
get -ar *
EOF
Run Code Online (Sandbox Code Playgroud)
但是,如果连接中断,这不会自动重新连接到服务器。lftp
是解决这个问题的更好选择。
小智 2
我使用 lftp 将所有照片从 NAS 自动同步到我的廉价网络服务器。如果照片发生变化,它会自动更新。
\n\n#!/bin/ash\nSOURCE=/volume2/PHOTO/2011\nBACKUPDIR=/foto.whatever.com/albums/2011\n\nlftp -u username,password ftp.whatever.com << EOF\nmirror -R -n -I *.jpg -I *.JPG -X @eaDir/ -X Collage/ -X \xe2\x80\x98whatever/\xe2\x80\x99 -X .piccache/ -X .recent/ -X Originals/ -X *.Db $SOURCE $BACKUPDIR\nquit\n
Run Code Online (Sandbox Code Playgroud)\n