根据 .txt 文件中包含的列表查找文件夹名称

根据 .txt 文件中包含的列表查找文件夹名称

我有一个 .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 文件中的行有什么重要的内容吗?每行上的目录是否应该与其他行上的目录区别对待?

相关内容