如何使用sed命令替换文件中的$ value?

时间:2016-10-18 10:40:59

标签: bash shell sed

我使用下面的命令来替换文件中的某些值。但即使命令运行正常,它也不会被替换。

sed -i 's|"TIBEMS:U1278:${Internal.Agent Name}"|"TIBEMS:U1278:${External.Agent Name}"|g' EMS_PRIMS01_7111_Monitor.hrb 

1 个答案:

答案 0 :(得分:0)

您需要转义元字符

 sed -i "s|\"TIBEMS:U1278:\${Internal.Agent Name}\"|\"TIBEMS:U1278:\${External.Agent Name}\"|g" EMS_PRIMS01_7111_Monitor.hrb 
 #      ^^             ^^                     ^^ ^^               ^^                       ^^
 #  Notice the escaping done for all the meta-characters i.e. '"' and '$'

通过这种方式,您的就地替换将起作用。