我们说我有一个包含以下内容的文本文件:
test
blablabla
test1
moreblabla
atest
blabla3
just*a*test
blabla14
test88
lastblabla
我想删除 ONLY 与字符串完全匹配的行" test"以及它之后的行没有删除包含字符串的行" test" 所以在我的情况下,我想删除第一行和第二行,但不删除其余行。
上面的文件只是一个例子,文件内容的变化就像字符串一样。
我在sed
找到的所有示例都只处理删除只包含一些字符串的行。我想只删除 IS 完全符合该字符串的行。
答案 0 :(得分:4)
只需在^
正则表达式周围添加$
和test
即可锚定您的匹配项。
sed -e '/^test$/,+1d' path/to/file
或者你可以^ *test *$
为包含'test'的行做空格。