我正在尝试使用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'
看起来有些正则表达式错误,无法解决。请帮帮我?
谢谢,
答案 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是文件名