Linux:仅rsync复制目录结构树
时间:2020-01-09 10:45:56 来源:igfitidea点击:
如何复制目录结构树而不在Linux或者UNIX操作系统下复制任何文件以删除服务器或者本地目录?
您需要使用rsync命令。
rsync远程更新协议允许rsync仅传输
使用有效的校验和搜索算法,可以确定整个网络连接上两组文件之间的差异。
确保将其安装在所有服务器上以进行远程复制。
仅复制目录树的语法如下:
rsync -av -f"+ */" -f"- *" /path/to/src /path/to/dest/ rsync -av -f"+ */" -f"- *" /path/to/apache/logs/ [email protected]:/path/to/apache/logs/
如果您使用的是较旧的rsync版本,请尝试:
rsync -av --include='*/' --exclude='*' /path/to/src /path/to/dest/ rsync -av --include='*/' --exclude='*' /path/to/apache/logs/ [email protected]:/path/to/apache/logs/
rsync命令仅用于目录结构/仅用于树
对于每个域,请在/var/logs/apache /中考虑以下布局:
cricketnow.in/ theitroad.local/ hexindia.net/ io9.in/ theitroad.com/ theitroad.com/
您可以通过排除其他所有内容来仅同步目录。
打开命令行终端(选择应用程序>附件>终端),然后执行以下命令或者使用ssh登录到远程服务器。
您要复制所有目录,即排除目录以外的所有目录,请执行:
# cd /var/log/apache/ # rsync -av -f"+ */" -f"- *" . [email protected]:/var/log/apache/
输出示例:
building file list ... done ./ cricketnow.in/ theitroad.local/ hexindia.net/ io9.in/ theitroad.com/ theitroad.com/ sent 388 bytes received 98 bytes 972.00 bytes/sec total size is 0 speedup is 0.00
您还可以按以下方式制作本地副本:
# cd /var/log/apache/ # rsync -av -f"+ */" -f"- *" . /jailfs/apache/httpd_root/var/log/apache/