Я пытаюсь передать строку, содержащую специальный символ в sed.Сохранять специальный символ в sed
Как избежать символа «$»?
echo "$azerty$" | sed 's///g'
Я пытаюсь передать строку, содержащую специальный символ в sed.Сохранять специальный символ в sed
Как избежать символа «$»?
echo "$azerty$" | sed 's///g'
$ echo "\$azerty$" | sed 's/\$/X/g'
XazertyX
Это делает это для меня (с помощью GNU SED)
% echo "\$azerty\$" | sed -r -e 's/\$//g'
azerty
Используйте одинарные кавычки, если вы хотите, чтобы отключить переменную интерполяции:
$ echo '$azerty$' | sed 's/\$/X/g'
XazertyX
Первое, что вы должны проверить, что ваша оболочка действительно echo'ing '$ azerty $' и не пытается расширить переменную 'azerty'. – Francisco