在Mac上的rsync移动并删除某些文件

时间:2018-07-22 04:34:32

标签: macos terminal rsync photo file-management

我有按日期组织的文件夹和子文件夹,其名称包含文件.jpgs和.arw。我想保留相同的文件夹结构,但是将ARW文件移到该文件夹​​结构的副本中,并将其从源目录中删除。另外,如果该文件夹不包含任何.ARW文件,则不会将其复制。

我正在做类似这样的事情,我可以在终端屏幕上运行它:

rsync -av --exclude=.*/ --include=‘*/‘ --include=‘*.arw’  --exclude=‘*’ /Users/adam/test1/ /Users/Adam/test2/

但是在我的测试中,它同时复制了.jpg和.arw文件以测试2。我的假设是,一旦我的代码仅移动ARW文件,我将添加--remove-source-files。< / p>

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

正确的命令是:

rsync -avm --remove-source-files --include='*.arw' --include='*/' --exclude='*' /Users/adam/test1 /Users/adam/test2

选项'm'防止复制空目录。

您可以使用'--dry-run'选项运行rsync来查看哪些文件将被复制而无需实际执行:

rsync -avm --dry-run --remove-source-files --include='*.arw' --include='*/' --exclude='*' /Users/adam/test1 /Users/adam/test2

答案 1 :(得分:0)

看来rsync的.ARW文件类型有问题。更改了将JPEG文件移动到新目录的要求。

rsync -am-删除源文件--include =' .jpeg'--include =' .jpg'--include =' /'--exclude = ''/ Users / adam / test \ 1 / / Users / Adam / test2 /

谢谢!