如何将递归目录复制到平面目录
How to copy recursive directories to a flat directory
我正在尝试将当前处于多目录结构中的所有 *.psd 文件复制到一个目录中。
是否有 rsync 参数化允许它?
提出的方案不是多级递归目录,只有单级子目录。
在我目前的情况下,我有多个递归目录(最多 7 个级别)中的文件,我想在一个目录中协调这些文件。
恐怕rsync
帮不了你。您可以使用 find
找到所有文件并将它们复制到目标目录,但是:
find /path/to/source/topdir -type f -name '*.psd' -exec cp {} /path/to/destination/ \;
我认为@choroba 的回答是正确的。
为了完整性(或者如果出于任何原因您需要使用 rsync 复制文件),您可以使用 rsync
做一些效率较低的事情(在这种情况下就像使用 cp
),使用查找、循环和其他并非真正必要的东西。
for file in $(find ./path/to/source/topdir -name "*psd" ); do rsync $file /path/to/destination/; done
我正在尝试将当前处于多目录结构中的所有 *.psd 文件复制到一个目录中。 是否有 rsync 参数化允许它?
在我目前的情况下,我有多个递归目录(最多 7 个级别)中的文件,我想在一个目录中协调这些文件。
恐怕rsync
帮不了你。您可以使用 find
找到所有文件并将它们复制到目标目录,但是:
find /path/to/source/topdir -type f -name '*.psd' -exec cp {} /path/to/destination/ \;
我认为@choroba 的回答是正确的。
为了完整性(或者如果出于任何原因您需要使用 rsync 复制文件),您可以使用 rsync
做一些效率较低的事情(在这种情况下就像使用 cp
),使用查找、循环和其他并非真正必要的东西。
for file in $(find ./path/to/source/topdir -name "*psd" ); do rsync $file /path/to/destination/; done