- 此问题在此处已有答案**:
Replace newlines with literal \n(6个答案)
2小时前关门了。
a.txt:
^variable=test\n
a.sh
#!/bin/ksh
string=aAxdf\ndafsfasdf\n
sed -i '/\^variable=/c\^variable='"$string"'' a.txt
输出:a.txt包含以下内容,不带斜杠
^variable=aAxdfndafsfasdfn
预期产出:
^variable=aAxdf\ndafsfasdf\n
2条答案
按热度按时间0s7z1bwu1#
在赋值变量时给字符串加上引号,并将反斜杠加倍,这样它们就不会被sed解释为换行符:
0h4hbjxa2#
在a.sh文件中,您需要执行以下操作:
1.引用你的变量赋值。
1.使用转义字符
\
对斜杠进行转义它看起来像
string='aAxdf\\ndafsfasdf\\n'