lftp镜像命令排除匹配文件[Regex]
时间:2020-01-09 10:41:11 来源:igfitidea点击:
如何使用ftp镜像目录,并要排除某些子目录(例如日志)和以* .cvs结尾的文件。
在Linux或Unix等操作系统上使用lftp命令进行镜像时,如何排除文件?
lftp ftp客户端具有许多功能,使其成为此类工作的更好选择。可以使用mirror命令并将指定的源目录指定为本地目标目录。如果目标目录以斜杠结尾,则源基本名称将追加到目标目录名称之后。您可以排除文件和子目录。您还可以使用glob字符,例如*。
lftp命令排除语法
语法如下:
mirror --exclude RX mirror --exclude-glob GP
在此示例中,排除日志目录,执行:
mirror --exclude logs/ --exclude
您可以多次使用--exclude:
mirror --exclude logs/ --exclude reports/ --exclude-glob *.bak --exclude-glob *~$
以下内容将排除所有* .cvs文件:
mirror --exclude-glob *.cvs
全部放在一起
创建一个名为mirror.http.lftp的文件,如下所示:
set ftp:list-options -a set cmd:fail-exit true open ftp.theitroad.local.com:/var/www/ lcd /nas06/backup/theitroad.local/ mirror --delete --exclude logs/ --exclude tmp/ --exclude-glob *~$ quit
创建或编辑一个名为~/.netrc的身份验证文件,该文件包含文件传输协议客户端ftp和lftp的配置和自动登录信息:
machine ftp.theitroad.local login MyUserNameHer password myPassWordHere
保存并关闭文件。
运行作业,如下所示:
lftp -f mirror.http.lftp
或者
lftp -f mirror.http.lftp > ~/mirror.http.lftp.log