Unix命令获取不包含某些文本的行

时间:2015-04-07 10:11:04

标签: unix grep cat

我有一个包含1000K行的UNIX日志文件。大多数文件都有行:

07 Apr 2015 17:54:23.854: Read 0 Messages

我使用cat filename

读取文件

我想阅读不包含特定文字的行 - 'Read 0 Messages'

我尝试了下面的命令:

cat filename|grep '^{Read 0 Messages}'
cat filename|grep '!{Read 0 Messages}'

你能告诉我正确的命令吗?

1 个答案:

答案 0 :(得分:8)

grep可以做到:

grep -v "'Read 0 Messages'" file

-v选项用于表示您想要打印的内容。

来自man grep

  

-v, - invert-match

     

反转匹配感,选择不匹配的线条。 (-v是   由POSIX指定。)

另外,请注意,不需要cat file | grep '...'。您可以直接说grep '...' file