我想要的是:在bash脚本中:在当前目录中查找包含某个字符串“ teststring”的所有文件,并将它们复制到一个子文件夹“ ./testfolder”
找到这个来找到我正在寻找的文件名
找 。型f -print0 | xargs -0 grep -l“ teststring”
..然后将找到的文件复制到另一个文件夹(此处按文件名中的字符串选择):
找 。型的F -iname “ stringinfilename ” -exec CP {} ./testfolder/ \;
结合这两个命令以实现我在顶部描述的最佳方法是什么?
只要让两者都找到即可:
find . -name subdir -prune -o -type f -exec \
grep -q teststring "{}" \; -exec cp "{}" subdir \;
请注意,如果您不尝试添加到正在使用的目录中,则这样的事情会容易得多。换句话说,写入同级目录而不是写入子目录。如果您想在子目录中处理数据,mv
请在完成后进行处理。这样,您不必担心prune
(即,您不必担心查找到子目录并尝试复制工作)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句