在Unix中的属性文件中替换值(URL)

时间:2016-07-08 19:41:38

标签: unix

我正在尝试使用Sed命令替换unix中的属性文件的值。这是代码:

属性文件:

Test.abc.homeURL:https://www.abdfghjc.net/instant-cash-offer/?from=1&LNX=TIMATCMOB&oCode=CMB

外壳:

  

MOBILE_HOME_PAGE_KEY =" Test.abc.homeURL"   MOBILE_REPLACE_URL =" HTTP://ww.xyz.com/default.html"

     

sed -i
  " S / ^ $ MOBILE_HOME_PAGE_KEY:* / $ MOBILE_HOME_PAGE_KEY:$ MOBILE_REPLACE_URL /"   propertiesFile

错误:

sed: -e expression #1, char 72: unknown option to `s'

看起来有些正则表达式错误,无法解决。请帮帮我?

谢谢,

2 个答案:

答案 0 :(得分:0)

你必须使用与斜杠(/)不同的字符来分隔sed参数,因为你在其中一个变量中有斜杠($ MOBILE_REPLACE_URL)。

只需使用#等其他字符。你也不能使用冒号,因为变量中有冒号。

答案 1 :(得分:0)

据我了解,您的要求是将密钥MOBILE_HOME_PAGE_KEY替换为MOBILE_REPLACE_URL密钥的值。

以下是我尝试的内容

sed -e' s / ^ MOBILE_HOME_PAGE_KEY =。* / MOBILE_HOME_PAGE_KEY = \" http://ww.xyz.com/default.html \" /' newfile中

newfile是文件名