cos*_*ist 3 grep sed awk case-sensitivity
我有一个包含以下信息的文件:
20 BaDDOg
31 baddog
42 badCAT
43 goodDoG
44 GOODcAT
Run Code Online (Sandbox Code Playgroud)
我想删除所有包含单词的行dog
。这是我想要的输出:
42 badCAT
44 GOODcAT
Run Code Online (Sandbox Code Playgroud)
但是,dog
大小写不敏感。
我以为我可以使用 sed command: sed -e "/dog/id" file.txt
,但我似乎无法让它工作。这与我在 OSX 上工作有关吗?我可以使用其他方法吗?
pfn*_*sel 11
尝试grep
:
grep -iv dog inputfile
Run Code Online (Sandbox Code Playgroud)
-i
忽略大小写并-v
反转匹配。
如果你想使用sed
你可以这样做:
sed '/[dD][oO][gG]/d' inputfile
Run Code Online (Sandbox Code Playgroud)
GNU使用修饰符sed
扩展模式匹配I
,这应该使匹配不区分大小写,但这并不适用于所有风格的sed
. 对我来说,这有效:
sed '/dog/Id' inputfile
Run Code Online (Sandbox Code Playgroud)
但它不适用于 OS X。