从包含子字符串的文件中删除行

时间:2019-03-07 16:45:04

标签: bash sed

我需要从文件中删除一些行。 具体来说,我需要删除所有包含子字符串的行:export JAVA_HOME=/usr/lib/jvm

我尝试过:

sed -i -e "/export JAVA_HOME=\"\/usr\/lib\/jvm*/d" file

sed -i -e "/export JAVA_HOME=\"\/usr\/lib\/jvm/d" file

但那些不会删除我在file中的行,即:

export JAVA_HOME=/usr/lib/jvm/openjdk-8-amd64/jre/

请帮忙吗? 谢谢

1 个答案:

答案 0 :(得分:1)

从图案中删除引号,因为它不会出现在要删除的行中:

sed -i -e "/export JAVA_HOME=\"\/usr\/lib\/jvm/d" file
#                            ^^ remove this