![在一个命令中同步两种文件类型?](https://linux22.com/image/42324/%E5%9C%A8%E4%B8%80%E4%B8%AA%E5%91%BD%E4%BB%A4%E4%B8%AD%E5%90%8C%E6%AD%A5%E4%B8%A4%E7%A7%8D%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%EF%BC%9F.png)
如何将它们写成一行,并且不重复相同的路径?
rsync -a root@somewhere:/folder/remote/*.txt .
rsync -a root@somewhere:/folder/remote/*.jpg .
答案1
我会这样写:
rsync -a root@somewhere:/folder/remote/*.{txt,jpg} .
答案2
rsync -a --include='*.txt' --include='*.jpg' --exclude='*' root@somewhere:/folder/remote/ .
/
(请注意,中的最后一个以及包含规则之后的/folder/remote/
放置非常重要。)在支持大括号扩展的 shell 中(例如 bash、ksh、zsh):--exclude='*'
rsync -a --include='*.'{txt,jpg} --exclude='*' root@somewhere:/folder/remote/ .
--include='*/' --prune-empty-dirs
如果您还想复制子目录中的文件,请添加。