从GREP结果中保存整个文件

时间:2017-06-30 16:04:15

标签: awk grep cygwin gnuwin32

好的,所以我在外部硬盘上使用grep

例如,

M:/

grep -rhI "bananas" . > out.txt

将输出" M:/"含有"香蕉"

但是我想输出文件的全部内容,所以如果exam​​ple.txt中的一行包含"香蕉"输出example.txt的全部内容,同样适用于目录中的任何其他.txt文件" M:/"包含"香蕉"。

1 个答案:

答案 0 :(得分:1)

要打印包含字符串bananas的任何文件名的内容,请输入:

find . -type f -exec grep 'bananas' -l --null {} + | xargs -0 cat

以上使用GNU工具处理包含换行符的文件名。

忘了你曾经看过任何grep args以递归方式查找文件,将这些args添加到GNU grep是一个糟糕的想法,只会让你的代码更复杂。在文件中使用find 查找文件和grep g / re / p