Что я делаю не так с Седом

Мой вклад:

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
Другие вопросы по тегам