搜索文件并排除具有指定字符串的行

搜索文件并排除具有指定字符串的行

我有一个很大的日志文件,其中包含同一条目的许多行,我们将其称为“重复信息”。作为示例,日志的一部分可能如下所示:

[Timestamp] repeat-info
[Timestamp] repeat-info
[Timestamp] Log information 1
[Timestamp] Log information 2
[Timestamp] repeat-info
[Timestamp] Log information 3
[Timestamp] repeat-info

有没有一个命令可以输出日志文件中的信息并排除重复信息?如果我必须使用more file.log并筛选所有重复的信息才能找到我想要查看的内容,那就会变得很麻烦。

我正在阅读手册页,sed并且awk当我看到这些手册页出现在我的问题的搜索中时,但是我还没有找到任何可以满足我需要的结论性内容。

我正在搜索较旧的问题并发现这个问题这与我有关。

我正在寻找一种方法来通过单个命令或两个管道连接在一起来执行此操作,而无需创建脚本。

任何帮助都将不胜感激!

答案1

有几种方法可以做到这一点。最好的是grep

grep -v 'repeat-info' file.log

其他方法:

sed '/repeat-info/d' file.log
sed -n '/repeat-info/!p' file.log

awk '!/repeat-info/' file.log

相关内容