【发布时间】:2013-06-10 07:53:39
【问题描述】:
我正在尝试在 sed 中传递一个包含特殊字符的字符串。
如何转义“$”字符?
echo "$azerty$" | sed 's///g'
【问题讨论】:
-
首先你应该检查你的shell是否真的在回显
$azerty$而不是试图扩展azerty变量。
标签: shell sed escaping special-characters
我正在尝试在 sed 中传递一个包含特殊字符的字符串。
如何转义“$”字符?
echo "$azerty$" | sed 's///g'
【问题讨论】:
$azerty$而不是试图扩展azerty变量。
标签: shell sed escaping special-characters
$ echo "\$azerty$" | sed 's/\$/X/g'
XazertyX
【讨论】:
这对我有用(使用 GNU sed)
% echo "\$azerty\$" | sed -r -e 's/\$//g'
azerty
【讨论】:
如果要禁用变量插值,请使用单引号:
$ echo '$azerty$' | sed 's/\$/X/g'
XazertyX
【讨论】: