我有一个 .txt 文件,每行包含 150 个不同的 ID 号,如下所示:
12345
15876
19643
12586
我有 300 个文件夹,与 .txt 文件位于同一目录中,并且我只想将名称与 .txt 文件中列出的名称匹配的文件夹复制到名为 New_Folder 的文件夹中。有没有一种简单的方法可以做到这一点?
答案1
一种方法是使用xargs
xargs -a list.txt cp -t path/to/New_Folder/ -R --
如果您想使用 shell 循环,请使用while
例如
while IFS= read -r dir; do
cp -t path/to/New_Folder -R -- "$dir"
done < list.txt
答案2
就像是:
for dir in `cat textfile.txt`; do
cp -a "$dir" New_Folder/
echo Copied $dir
done
也许?
注意:如果 textfile.txt 中的任何目录名称中包含空格,则会变得更加困难。
另外:.txt 文件中的行有什么重要的内容吗?每行上的目录是否应该与其他行上的目录区别对待?