使用sed / awk排除某些模式或二进制文件

时间:2012-10-12 07:30:57

标签: sed awk

我在这样的文件中有模式

parent/child
parent/child/child2
neighbor/child
neighbor/child/child3

我想仅使用sed和awk排除所有neighbor及其子项。

输出应为:

parent/child
parent/child/child2

3 个答案:

答案 0 :(得分:2)

$ cat a
parent/child
parent/child/child2
neighbor/child
neighbor/child/child3
$ sed '/neighbor/d' a
parent/child
parent/child/child2

来自documentation

  

d - 删除模式空间;立即开始下一个周期。

答案 1 :(得分:1)

使用grep:

$ grep -v 'neighbor' file
parent/child
parent/child/child2

答案 2 :(得分:1)

在Awk中,

awk '{ if($0 !~ /^neighbor.*/) { print $0} }' file