Rsync 秒杀一切备份工具,你能手动屏蔽某些目录吗?
作者:弑天倾城 发布时间:2023-10-12 13:09:12
引言
Rsync 是一种快速且通用的命令行实用程序,可通过远程shell在两个位置之间同步文件和文件夹。
使用 Rsync,可以镜像数据,创建增量备份,并在系统之间复制文件。复制数据时,你可能要根据文件名或位置排除一个或多个文件或目录。
在本文中,我们将展示如何使用rsync排除文件和目录。
准备工作
先简要说一下 rsync 的工作流程和使用方法。
在下面的示例中,我们使用rsync 的-a选项,这会递归同步目录,传输特殊设备和块设备,并保留符号链接,修改时间,组,所有权和权限。
当排除文件或目录时,需要使用它们到源目录的相对路径。
有两个选项可以指定要排除的文件和目录:
在命令行中,使用–exclude选项。
在文件中,使用–exclude-from选项。
排除特定文件
要排除特定文件,请将文件的相对路径传递给该–exclude选项。在以下示例中,文件 src_directory/file.txt 将不会被传输:
rsync -a --exclude 'file.txt' src_directory/ dst_directory/
如果要排除目录内容但不排除目录本身,请使用dir1/*代替dir1:
rsync -a --exclude 'dir1/*' src_directory/ dst_directory/
排除多个文件或目录
要排除多个文件或目录,只需指定多个–exclude选项:
rsync -a --exclude 'file1.txt' --exclude 'dir1/*' --exclude
'dir2' src_directory/ dst_directory/
如果您希望使用单个--exclude
选项,则可以用 {}
将要排除的文件和目录列出,并用逗号分隔,如下所示:
rsync -a --exclude={'file1.txt','dir1/*','dir2'} src_directory/ dst_directory/
如果要排除的文件和/或目录的数量很多,则—exclude可以使用要在文件中排除的文件和目录,而不是使用多个选项。只需将文件传递给该—exclude-from选项。
下面的命令与上面的命令完全相同:
rsync -a --exclude-from='exclude-file.txt' src_directory/ dst_directory/
在 exclude-file.txt 内存储这些内容:
file1.txt
dir1/*
dir2
根据正则模式排除多个文件或目录
使用rsync,你还可以根据与文件或目录名称匹配的模式排除文件和目录。
例如,要排除所有.jpg
文件,请运行:
rsync -a --exclude '*.jpg*' src_directory/ dst_directory/
排除与特定模式匹配的文件和目录之外的其他所有文件和目录并不困难。假设你要排除所有其他文件和目录,但以 .jpg 结尾的文件除外。
一种选择是使用以下命令:
rsync -a -m --include='*.jpg' --include='*/' --exclude='*' src_directory/ dst_directory/
使用多个include/exclude
选项时,将应用第一个匹配规则。参数含义:
--include='*.jpg'
首先,我们包括所有.jpg文件。--include='*/'
然后,我们将所有目录都包含在in src_directory目录中。没有这个rsync只会复制*.jpg顶级目录中的文件。-m
删除空目录
另一个选择是将 find 命令的输出传递给 rsync:
find src_directory/ -name "*.jpg" -printf %P\\0\\n | rsync -a --files-from=- src_directory/ dst_director
参数含义:
-printf %P\\0\\n
将 从src_directory/文件路径中删除。--files-from=-
表示仅包含来自标准输入的文件(从find命令传递的文件)。
如果第一张方式难以掌控的话,那么这个 find 指令所做的筛选,对于运维同学应该友好的多了。
写在最后
rsync 一旦数量使用了之后,甚至应该替代 scp ,成为我们日常在本地到服务器,服务器之间,目录和文件同步的标准工具。
来源:https://blog.csdn.net/kh_fc/article/details/111218494


猜你喜欢
- 随着互联网的快速发展,网购,这个名词对于广大网民来说已经是再熟悉不过了。只要上网,必定穿梭在网上人家的大街小巷之中。可以说互联网上的B2B,
- 微软 IIS上如何启用 Gzip 压缩机制? 或许看过 YSlow 优化规则并且正在使用的朋友比较关心这个问题。基本步骤可以参考微
- 核心提示:Google怎样判断和鉴别所谓的线下大品牌,从而给予更高排名?这个问题换一种说法就是,做SEO的能怎样利用这一最新趋势,提高自己网
- godaddy最新25%以上优惠码,30%优惠码:gdz127dc (产品通用消费满100美元可用)godaddy最新25%以上优惠码,29
- 内容摘要:今天来简单的谈谈如何写软文,可能大家会觉得:软文,不就是写个小作文,后面带上自己的链接吗,但现在越来越重视软文的结果,就是各个站长
- 据OpenSUSE官方发布的消息称,lizardsource.cn成为中国大陆内OpenSuSE最大镜像服务器。目前,国内也有大大小小几个O
- 在可执行 java命令的情况下查找过程如下:执行which java[root@localhost ~]# which java/usr/b
- 编者按:昨天我们迎来了微软的继Vista SP1和WinXP SP3后的又一力作那就是IE8,此次放出的虽然还只是微软意图面向开发者的Bet
- 准备工作:1.安装VMware workstation 软件2.下载好kali linux 的ios系统文件3.打开电脑的虚拟化支持( In
- 很奇怪对不对?似乎所有教程都在教你,怎么为你的网站拉拢更多的看客,不管是正面诱导还是强女干眼球。先把人拉过来再说!人多了,点广告也好,买东西
- 拷贝数据远程拷贝数据的时候,我们一般使用rsync命令,但是如果拷贝大量的小文件,会导致rsync的传输速度慢。使用tar pv lz4打包
- Activiti7发布正式版之后,它与SpringBoot2.x已经完全支持整合开发。我们可以将Activiti7与SpringBoot整合
- 就像家庭中90%的维修活都能用螺丝刀和扳手来完成,Web服务器也不例外。让我们来看看这些工具。1、服务器响应缓慢如果服务器响应缓慢,需要做的
- IIS 7.0的十大改进: 1. 更简便的命令行配置功能 2. 更强的兼容性 3. 抛弃MetaBase 4. 集中管理 5. 委任配置 6
- 鉴于这个教程没人发过,网上搜索的人也比较多。所以就做了个。比如我要添加:栏目图片,和栏目关键字等。随便你吧。好。我们现在开始做。第一我们要进
- 今天我常去的好听音乐网打不开,搞得我很郁闷,只能去百度重新搜索一个音乐网临时听,因为是做SEO的,所以知道搜索什么样的词能很直接的找到我需要
- 描述解决VMware 15虚拟机桥接模式无法上网问题步骤1:在设置中找到 网络和internet—>>更改适配器选项-----&
- 404页在网站的作用是当浏览者访问网页为空时,网站会自动转向404页,意义就是告诉访客,此页找不到.404页的原因可能是因为网页不存在或者更
- 在网络管理中,对于DNS服务的管理是一项基础性的工作。随着用户规模的扩大,频繁地手工修改DNS的区域数据库文件不是一件轻松的工作。关于动态D
- SEO就是品味美女的过程。这是本人闲暇之余弄出来的聊资,以供消遣。不管不是否认同我这谬论,请看完我的描述后在灌水,谢谢! &n