Linux中利用rsync命令选择性复制文件
创始人
2024-09-26 05:46:31

rsync命令简介

rsync Remote Sync远程同步)是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。

rsync不仅可以远程同步数据(类似于scp命令),还可以本地同步数据(类似于cp命令)。不同于cp或scp的一点是,使用scp命令备份数据时,不会直接覆盖以前的数据(如果数据已经存在),而是先判断已经存在的数据和新数据的差异,只有数据不同时才会把不相同的部分覆盖。

rsync命令复制操作

1. 将一个本地目录复制到另一个目录

rsync -av /path/to/source/path/to/destination

-a:表示归档模式,会保持文件的所有属性,递归复制子目录和文件

-v:表示详细模式,显示复制过程中的详细信息

2. 将一个本地文件复制到另一个目录下

rsync -av /path/to/source/file/path/to/destination/

3. 保持本地两个目录同步,可以使用--delete选项,这将确保目录中不包含源目录没有的文件

rsync -av --delete /path/to/source/ /path/to/destination/

4. 排除某些文件或文件夹不进行复制(例如一些很大的文件或文件夹),可以使用--exclude选项来指定排除的文件或文件夹模式

  • 排除特定文件,可以使用--exclude选项并指定文件名或通配符模式,这将排除名为 file.txt的文件、dir_to_exclude 的目录、所有以 .jpg 结尾的文件

rsync -av --exclude='file.txt' --exclude='dir_to_exclude/' --exclude='*.jpg' /path/to/source/ /path/to/destination/

  • 也可以将排除规则放在一个文件中(如 exclude.txt),然后使用 --exclude-from 选项来指定该文件

        exclude.txt 文件和 rsync 命令如下:

file.txt  dir_to_exclude/  *.jpg

rsync -av --exclude-from='exclude.txt' /path/to/source/ /path/to/destination/

参考:

19 张图详解 Rsync 远程同步-腾讯云开发者社区-腾讯云 (tencent.com)

linux中rsync这一强大命令的用法详解 - 知乎 (zhihu.com)

相关内容

热门资讯

一只小龙虾何以引爆全球AI圈? AI正逼近“安全围栏”,人类要有“掀桌子”的能力 | 图源:即梦AI 作者/ IT时报 贾天荣 编辑...
柳州智能工厂里,奏响“春之歌” 年味渐浓,生产正忙。连日来,记者走进柳州3家智能工厂,探访人工智能与制造业深度融合的真实图景,聆听车...
骄成超声获得实用新型专利授权:... 证券之星消息,根据天眼查APP数据显示骄成超声(688392)新获得一项实用新型专利授权,专利名为“...
“太恐怖了!”字节最新AI视频... 智东西 作者 | 王涵 编辑 | 冰倩 智东西2月9日报道,2月7日,字节跳动AI视频生成模型See...
澳媒:全球Z世代正感受“中国气... 澳大利亚广播公司2月8日文章,原题:为什么社交媒体上的Z世代正经历“我的人生中‘很中国’的时光” 全...