我的意见:
sed -i 's/if ($.browser.msie)/if ($.browser={ msie: ( navigator.appName == 'Microsoft Internet Explorer') ? true : false })/g' file.js
我尝试将搜索和替换文本放在单引号和双引号中,但出现错误:
sed: -e expression #1, char 79: unterminated `s' command
答案1
将周围的单引号替换Microsoft Internet Explorer
为双引号,并在前面插入一个空格字符,file.js
正如您在评论中提到的那样。还可以使用反斜杠字符来转义$和.字符,方法是在正则表达式中出现和字符的位置前面放置一个反斜杠。
sed -i 's/if (\$\.browser\.msie)/if (\$\.browser={ msie: ( navigator\.appName == "Microsoft Internet Explorer") ? true : false })/g' file.js