使用sed替换带有转义换行符'\ n'的换行符'\ n'

时间:2015-06-11 15:52:26

标签: regex bash sed

我正在尝试使用\n用文字\\n替换文字术语sed(不是换行符,文字)。我试过这个:

echo '"Refreshing \n\n\n state prior"' | sed 's/\\n/\\\n/g'

这“有效”但我需要输出文字字符\\n。现在我最终得到这样的东西:

"Refreshing \
\
\
 state prior"

我有办法在\\n输出中保持sed吗?

2 个答案:

答案 0 :(得分:1)

sed 's/\\n/\\\n/g'更改为:

sed 's/\\n/\\\\n/g'

如果您想将\n替换为\\n

答案 1 :(得分:1)

要让\\n再向您的sed添加一个\

echo "Refreshing \n\n\n state prior" | sed 's/\\n/\\\\n/g'

您尝试使用\\\n进行的操作是打印\个字符,然后添加导致换行的\n