删除与单词匹配的行很容易
例如,当我们想要删除与单词匹配的行时 -max.connections
sed '/max.connections/d' /home/conf.txt
但如何删除以下匹配行以及仅以注释开头的行
more /home/conf.txt
#max.connections=438473
# max.connections=438473
# max.connections=438473
# max.connections=438473
max.connections=438473
注意 - 注释可以在开头或带有空格
预期输出示例
more /home/conf.txt
max.connections=438473
答案1
艺术就是精心设计一个正则表达式来完全满足您的需求。在本例中,您想要匹配以 a 开头#
、包含一些字符、然后是 的行max.connection
。在正则表达式中,这将是
^ beginning of the line
# The character '#'
.* any character, may be repeated 0-infinity times
max.connections This litteral text
或作为sed
命令:
sed '/^#.*max.connections/d' /home/conf.txt