linux – 使用lftp将本地文件夹与ftp文件夹同步的语法?
发布时间:2020-12-14 00:51:14 所属栏目:Linux 来源:网络整理
导读:我想将两个文件夹相互同步.它应该有两种方式,始终保持文件夹最新(我使用常规cronjob).但是,首先我没有让双向文件传输工作(它只是从ftp下载而不是相反). 其次,它从ftp下载整个内容,即使已经在ftp上设置了登录信息,因此访问仅限于特定文件夹.为什么?? 这是代
我想将两个文件夹相互同步.它应该有两种方式,始终保持文件夹最新(我使用常规cronjob).但是,首先我没有让双向文件传输工作(它只是从ftp下载而不是相反).
其次,它从ftp下载整个内容,即使已经在ftp上设置了登录信息,因此访问仅限于特定文件夹.为什么?? 这是代码(提前谢谢!): #!/bin/bash #get username and password USER=username PASS=password HOST="myftpserver.com/users/user1/" #here I have tried with only specifying server name as well as including whole path LCD="~/Desktop/localfolder/" RCD="users/user1/" lftp -c "set ftp:list-options -a; open ftp://$USER:$PASS@$HOST; lcd $LCD; mirror -c --reverse --verbose $LCD $RCD" #I have tried a few different options w/o result 解决方法
你可能不再需要这个了(迟了4年),但我会更新这个,如果有人在这里遇到同样的问题,这里有一个帮助.
如果要将FTP服务器文件夹与文件夹中的内容同步,则应使用类似这样的内容 #!/bin/bash #get username and password USER=username #Your username PASS=password #Your password HOST="myftpserver.com" #Keep just the address LCD="~/Desktop/localfolder" #Your local directory RCD="/users/user" #FTP server directory lftp -f " open $HOST user $USER $PASS lcd $LCD mirror --continue --reverse --delete --verbose $LCD $RCD bye " 如果要将其用于从本地文件夹同步到FTP服务器,只需删除–reverse并在mirror命令中交换文件夹即可. #!/bin/bash #get username and password USER=username #Your username PASS=password #Your password HOST="myftpserver.com" #Keep just the address LCD="~/Desktop/localfolder" #Your local directory RCD="/users/user" #FTP server directory lftp -f " open $HOST user $USER $PASS lcd $LCD mirror --continue --delete --verbose $RCD $LCD bye " 要做一些你在问题中评论的内容,同步两种方式并保持每个方面的最新值,我不相信单独使用lftp可能需要检测更改并决定使用哪个脚本. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |