Linux Shell Grep 输出到文本文件

Linux Shell Grep 输出到文本文件

我正在尝试在我的服务器上搜索一些网站中的几个关键词,并将这些关键词输出到文本文件中。我只知道如何做:

 grep -r "keyword1" *
 grep -r "keyword2" *

我需要能够将两个关键字组合到搜索中并将位置输出到文本文件中。

答案1

提示:使用正则表达式可获得更好的性能并合并结果

grep -r -E "关键字1|关键字2" * > 结果

将两个搜索合并为一个将为更大的搜索带来更好的性能。您可以获得两组结果,而无需再次运行 grep。

如果您只想要实际匹配的部分(而不是整行),那么请添加 -o 选项。

答案2

#!/bin/bash
touch outputfile.txt
grep -r "keyword1" * >> outputfile.txt
grep -r "keyword2" * >> outputfile.txt

此 shell 脚本将创建一个空的目标文件,以下两个命令将附加该文件。脚本文件必须是可执行的。

相关内容