0

试图在文件中替换所有内容,包括密码到空格。

密码=xx%40%25PKz3L2jTa HTTP

使用来自http://en.wikipedia.org/wiki/Regular_expression的正则表达式尝试了以下 sed 命令

sed 's/密码=(.)+/ /g' $file

sed 's/密码=[^ ]+/ /g' $file

以上均无效。为什么?

4

2 回答 2

2

试试这个-r论点:

sed -r 's/password=[^ ]+/ /g' $file
于 2013-05-19T01:25:10.280 回答
0

该标准sed不理解“扩展”正则表达式,例如'+'。两种选择:

启用扩展正则表达式

sed -E 's/password=[^ ]+/ /g' $file

或使用标准正则表达式

sed 's/password=[^ ]*/ /g' $file

我更喜欢第二个,因为它更便携,并且与第一个不同,它可以使用空密码字段。

于 2013-05-19T06:30:10.243 回答