Unix 命令获取不包含特定文本的行
Unix command to get lines not containing certain text
我有一个包含 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}'
你能告诉我正确的命令吗?
grep
可以做到:
grep -v "'Read 0 Messages'" file
-v
选项用于指示您不想 打印的内容。
来自man grep
:
-v, --invert-match
Invert the sense of matching, to select non-matching lines. (-v is
specified by POSIX.)
此外,请注意没有必要 cat file | grep '...'
。你可以直接说grep '...' file
.
我有一个包含 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}'
你能告诉我正确的命令吗?
grep
可以做到:
grep -v "'Read 0 Messages'" file
-v
选项用于指示您不想 打印的内容。
来自man grep
:
-v, --invert-match
Invert the sense of matching, to select non-matching lines. (-v is specified by POSIX.)
此外,请注意没有必要 cat file | grep '...'
。你可以直接说grep '...' file
.