我在不同的子文件夹中有多个文件(所有文件都具有相同的扩展名),我只想复制其中的一个子集。例如,考虑:
A/: 1.txt, 2.txt, 3.txt
B/: 4.txt, 5.txt, 6.txt
C/: 7.txt, 8.txt, 9.txt
我想复制文件1.txt
,2.txt
,5.txt
,和8.txt
一个新的文件夹。
知道我有500多个子文件夹,每个子文件夹包含数千个文件和要复制的文件列表(txt文件),是否有一种方法可以自动执行此操作?
如果列表包含完整路径,则可以循环移动它们:
while read file ; do
mv "$file" dir/
done < list.txt
如果列表仅包含文件名,但不包含路径,则可以使用globstar。
# enable double asterisk to recurse directories
shopt -s globstar
while read file ; do
mv **/"$file" dir/
done < list.txt
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句