rsync排除目录或文件
1. 要排除特定文件,请将文件的相对路径传递给--exclude
选项。在下面的例子中,文件src_directory/file.txt
不会被传输:
rsync -a --exclude 'file.txt' src_directory/ dst_directory/
2. 排除特定目录与排除文件相同,只需将目录的相对路径传递给--exclude
选项,如下图所示:
rsync -a --exclude 'dir1' src_directory/ dst_directory/
3. 如果你想排除目录内容,但不是目录本身,请使用dir1/*
代替dir1
:
rsync -a --exclude 'dir1/*' src_directory/ dst_directory/
4. 要排除多个文件或目录,只需指定多个--exclude
选项,例如:
rsync -a --exclude 'file1.txt' --exclude 'dir1/*' --exclude 'dir2' src_directory/ dst_directory/
5. 如果您只用--exclude
选项来排除多个文件或目录,您可以用括号{}
列出您想要排除的文件和目录,中间用逗号隔开,如下所示:
rsync -a --exclude={'file1.txt','dir1/*','dir2'} src_directory/ dst_directory/
6. 如果要排除的文件或者目录的数量很大,可以在一个文件中指定要排除的文件和目录,并将文件传递给exclude-from
选项,而不是使用多个--exclude
选项。
rsync -a --exclude-from='exclude-file.txt' src_directory/ dst_directory/
cat exclude-file.txt //指定一个文件,然后将需要排除的文件或目录,罗列清单,写绝对路径。
file1.txt
dir1/*
dir2
7. 通过管道将find
命令的输出传输到rsync:
find src_directory/ -name "*.jpg" -printf %P\\0\\n | rsync -a --files-from=- src_directory/ dst_directory/
-printf %P\\0\\n
– 将从文件路径中删除src_directory/
。
--files-from=-
– 意味着只包含来自标准输入的文件(从find命令传递的文件)。
结束。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端