我有一个名为 images 的目录,其中包含许多图像。例如:
images/
imag001.png
imag002.png
imag003.png
imag004.png
我有一个文本文件,其中包含我想复制到其他地方的文件。说 test.txt 文件有
img001.png
img003.png
如何将 test.txt 中指定的文件从 images 文件夹复制到其他地方?
images
在你的目录下试试这个单行:
awk '{print "cp "$0" /target/path"}' test.txt|sh
我认为在 bash shell 中你可以这样做:
for image in $(cat copylist.txt); do
cp $image destination
done
你可以写:
while IFS= read -r image_filename ; do
cp images/"$image_filename" some_other_place/
done < test.txt
这个问题可能有很多解决方案。我会通过使用 xargs 来做到这一点:
cd images/
cat path/to/test.txt | xargs -I FILES cp FILES path/to/dest/
cat copylist.txt | xargs -n1 -I % echo cp % destination/.
# remove echo after testing