我有一个具有不同值的配置文件,格式如下:
[Global]
control_ip =
control_port =
control_socket = /run/tipper.sock
control_pass =
现在我只想删除之后没有值的行=
,当然不删除[Global]
节标题。
答案1
sed '/=\s*$/d' infile
或者
sed '/=[[:blank:]]*$/d' infile
删除那些以=
零个或多个空格结尾的行。
使用awk
并保留空行:
awk -F'[=\t ]' '$NF!="" || /^$/' infile
或者
awk -F'=[[:blank:]]*' '$NF!="" || /^$/' infile