我正在尝试同步两个目录,省略某些文件。
find . -type f -print0 |rsync -vupt -0 --files-from=- . /tmp/test
这会复制每个文件,但按预期工作
当我尝试限制复制的文件时出现问题。所以,如果我想要复制除#34; .part"之外的所有文件。 :
find . -type f -\! -iname "*.part" -print0 |rsync -vupt -0 --files-from=- . /tmp/test
但这根本无法复制任何东西。
如果我删除了管道,我可以看到find正在输出一个看起来就像第一个命令的输出类型的流,但是减去了我不想复制的文件名。
(我尝试了-not和-name替代品,但没有运气)
我做错了什么?
感谢您的帮助。
答案 0 :(得分:0)
find
否定不是命令,而是运算符。您可以使用! -iname "*.part"
来否定该单个表达式。