将包含其内容中特定文本的文件从文件夹复制到其他文件夹

use*_*737 1 unix

有时我遇到过一种情况,我必须将包含特定模式的所有文件从文件夹复制到另一个文件夹.

例如,DirA包含100个文件,其中有60个文件包含模式FOO.我的要求是将这60个文件复制DirADirB.

我通常会编写一个小的shell脚本来完成这项工作,并且它可以正常工作.但是,我试图了解是否有一种方法只使用一些命令的组合,这样我就不需要编写任何shell脚本.

tom*_*ahh 6

您可以使用

cp `grep -l 'FOO' dirA/*` dirB/
Run Code Online (Sandbox Code Playgroud)

grep -l 将仅输出与模式匹配的文件的名称.