posts - 299,comments - 31,views - 62万

如果要排除/home/data目录下面的a、b、c、三个目录,同时拷贝其它所有目录,执行rsync命令
yum install rsync -y #安装rsync

排除单个文件/目录
rsync -avP --exclude=del_file source_dir dest_dir
注意:--exclude后面的路径不能为绝对路径,必须为相对路径才可以,否则出错。

排除多个文件/目录
rsync -avP --exclude={del_file1, del_file2, ...} source_dir dest_dir

注解:

rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。-a参数表示archive模式,-v表示详细链模式输出,-z表示传输文件时使用压缩传输的模式。

复制代码
-a : 包含-rtplgoD
-r : 同步目录时要加上,类似cp时的-r选项
-v : 同步时显示一些信息,让我们知道同步的过程
-P : 显示同步过程,比如速率,比-v更加详细
-l : 保留软连接
-L : 加上该选项后,同步软链接时会把源文件给同步
-p : 保持文件的权限属性
-o : 保持文件的属主
-g : 保持文件的属组
-D : 保持设备文件信息
-t : 保持文件的时间属性
--delete : 删除DEST中SRC没有的文件
--exclude : 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步
-u : 加上该选项后,如果DEST中的文件比SRC新,则不同步
-z : 传输时压缩


链接:https://www.jianshu.com/p/bf9eba9f4e97
复制代码

示例:

cd /opt/shence_data/800006/ 
rsync -avP --exclude={service_log.2022-06-30, service_log.2022-06-15} /opt/shence_data/800006/ /opt/shence_data_bak/

 

复制代码
Linux中移动,复制,删除,打包排除某个目录或文件
移动,复制,删除排除某个文件或目录
cp !(file1|dir2) /data/ 复制文件到/data/,排除file1和dir2
mv !(file1|dir2) /data/ 移动文件到/data/,排除file1和dir2
rm -rf !(file1|dir2) ./ 删除当前目录下的文件,排除file1和dir2
tar打包排除某个目录或文件
使用--exclude选项,格式与示例如下
格式:
tar -zcvf xxx.tar.gz dir --exclude=dir1 --exclude=file2 打包dir目录,排除dir1目录与file2文件
示例:
tar zcvf example.tar.gz ./ --exclude=test --exclude=test.txt 打包当前目录,排除test目录与test.txt文件
注意:
--exclude=dir 而不是 --exclude=dir/
--exclude=test.txt 而不是 --exclude test.txt
复制代码

 

posted on   小油2018  阅读(2635)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2019-07-04 notepad中文显示乱码、方格
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示