ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux – 使用lftp将本地文件夹与ftp文件夹同步的语法?

2019-05-31 09:38:05  阅读:249  来源: 互联网

标签:linux sync ftp synchronize


我想将两个文件夹相互同步.它应该有两种方式,始终保持文件夹最新(我使用常规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可能需要检测更改并决定使用哪个脚本.

标签:linux,sync,ftp,synchronize
来源: https://codeday.me/bug/20190531/1188259.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有