【发布时间】:2017-01-05 01:03:06
【问题描述】:
我正在从 db 将一些 sql 查询读入一个变量,它包含换行符 (\n)。我想用空格替换 \n (新行)。我尝试了互联网上提供的解决方案,但未能实现我想要的。这是尝试过的:
strr="my\nname\nis\nxxxx";
nw_strr=`echo $strr | tr '\n' ' '`;
echo $nw_strr;
我想要的输出是“我的名字是 xxxx”,但我得到的是“my\nname\nis\nxxxx”。我还尝试了互联网上提供的其他解决方案,但没有运气:
nw_strr=`echo $strr | sed ':a;N;$!ba;s/\n/ /g'`;
我在做什么吗?
【问题讨论】:
-
对于初学者来说,
$strr不包含换行符,它包含文字反斜杠-N 序列。尝试strr=$'my\nname\nis\nxxxx'以获得正确的换行符。