我正在尝试查找包含位于文件名中的文本文件中的字符串的文件,然后将这些文件复制到新目录。
Example 1.txt contains strings line by line:
1234
1666
Directory contains files:
JOHN-1234-TEXT.CSV
DAVE-1666-TEXT.CSV
LAURA-1826-TEXT.CSV
If code is successful it will copy the files to a new specified directory:
JOHN-1234-TEXT.CSV
DAVE-1666-TEXT.CSV
如果有人能帮助我会非常感激。
答案 0 :(得分:0)
查找 + grep + tr + xargs 管道方法:
find olddir -type f -print | grep -f "1.txt" | tr '\n' '\0' | xargs -0 -I{} cp {} newdir
olddir
目录包含初始文件
grep -f "1.txt"
- 从文件中获取模式,每行一个
答案 1 :(得分:0)
快速解决方案:
while read line;do
find -iname "*$line*" -exec cp {} newdir/ \;
done < string_file