删除包含不区分大小写匹配项的行

宇宙论者

我有一个包含如下信息的文件:

20    BaDDOg
31    baddog
42    badCAT
43    goodDoG
44    GOODcAT

我想删除所有包含单词的行dog这是我想要的输出:

42    badCAT
44    GOODcAT

但是,dog大小写不敏感。

我以为我可以使用sed命令:sed -e "/dog/id" file.txt,但是似乎无法正常工作。它与我在OSX上工作有关吗?我还有其他方法可以使用吗?

pfnuesel

尝试grep

grep -iv dog inputfile

-i忽略大小写并-v反转匹配项。

如果要使用sed,可以执行以下操作:

sed '/[dD][oO][gG]/d' inputfile

GNUsed扩展了使用修饰符的模式匹配,该I修饰符应使区分大小写不敏感,但这不适用于的所有形式sed对我来说,这有效:

sed '/dog/Id' inputfile

但在OS X上将无法使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章