linux如何实现,对某个文本循环查找多个字符串,并输出所在行的内容?

假设有一个search.txt 文本文件:里面有5个单词
word
list
hello
good
bad
另外一个文本文件all.log

如何实现:从all.log 选出含有word、list、hello、good、bad所在的行文本。

第1个回答  2022-12-10
在 Linux 中,您可以使用 grep 命令来实现这个功能。该命令可以用来在文本文件中搜索特定的文本模式。
例如,要查找在文件 all.log 中含有单词 word 的行,您可以使用以下命令:
grep word all.log

如果要查找多个单词,您可以将它们放在一个字符串中,然后将该字符串作为 grep 命令的参数。例如,要查找在文件 all.log 中含有单词 word、list、hello、good 或 bad 的行,您可以使用以下命令:
grep "word|list|hello|good|bad" all.log

请注意,单词之间使用 | 符号隔开,表示“或”的意思。
此外,您还可以使用 -f 选项来指定要查找的单词列表所在的文件,这样就可以避免在命令行中手动输入单词列表。例如,如果要查找的单词列表保存在文件 search.txt 中,您可以使用以下命令:
grep -f search.txt all.log

希望这些信息能够帮助您解决问题。
相似回答
大家正在搜