Bash sed:将char替换为保存在变量中的包含换行符的字符串

Bash sed:将char替换为保存在变量中的包含换行符的字符串,bash,sed,Bash,Sed,有没有人知道,如果替换项保存在变量中,这一行程序是如何工作的。以下内容成功地将每个b替换为NL: echo "bbbb" | sed $'s/b/\\\n/g' 是这样的东西: var="\\\n" ; echo "bbbb" | sed $'s/b/$var/g' 在Confirct中,我需要双引号来解析模式中的变量,但我需要单引号来解析$s,以便正确地将转义的符号解释为真正的指令——就我所见 提前谢谢 不要使用单引号,而是使用双引号: var="\n" echo "bbbb" | sed

有没有人知道,如果替换项保存在变量中,这一行程序是如何工作的。以下内容成功地将每个b替换为NL:

echo "bbbb" | sed $'s/b/\\\n/g'
是这样的东西:

var="\\\n" ; echo "bbbb" | sed $'s/b/$var/g'
在Confirct中,我需要双引号来解析模式中的变量,但我需要单引号来解析$s,以便正确地将转义的符号解释为真正的指令——就我所见


提前谢谢

不要使用单引号,而是使用双引号:

var="\n"
echo "bbbb" | sed "s/b/$var/g"
单引号防止变量扩展

var=$'\\\n' ; echo "bbbb" | sed "s/b/$var/g"
这就是我要找的