如果找到内容后如何在grep之后生成文件?

时间:2013-12-13 12:42:43

标签: shell grep

我这样做(例如:):

grep a text.txt > file.log

我可以生成file.log,只要它找到了“a”。我应该把它放入if吗?怎么样? 有人可以举个例子吗?此时这将生成空白文件。

2 个答案:

答案 0 :(得分:6)

一个简单的解决方法是:

grep a text.txt > file.log || rm file.log

如果file.log找不到匹配项,则会删除grep。所以你不会有空白文件。

答案 1 :(得分:5)

awk '/a/{print >"file.log"}' text.txt

如果文件text.txt与'a'

匹配,则此命令将创建file.log