我想用 sed 替换配置文件中的一行。但我尝试替换的行包含未知数量的空格:
conf is foo
conf is bar
config is foobar
我尝试匹配空格字符,但\s+
没有成功:
$ sed -r 's|conf\s+is\s+foo|conf is boo|g' file.txt
我想conf is foo
用 来替换conf is boo
。
我怎样才能做到这一点?
答案1
sed
不支持\s
,您必须使用[[:blank:]]
:
sed -r 's|conf[[:blank:]]+is[[:blank:]]+foo|conf is boo|g' file.txt