在 bash 中用 space 替换 \n(新行)
Replace \n(new line) with space in bash
我正在将一些 sql 查询读入数据库中的变量,它包含换行符 (\n)。我想用 space 替换 \n(新行)。我尝试了互联网上提供的解决方案,但没有成功实现我想要的。这是尝试过的:
strr="my\nname\nis\nxxxx";
nw_strr=`echo $strr | tr '\n' ' '`;
echo $nw_strr;
我想要的输出是 "my name is xxxx" 但我得到的是 "my\nname\nis\nxxxx"。我也试过互联网上提供的其他解决方案,但没有成功:
nw_strr=`echo $strr | sed ':a;N;$!ba;s/\n/ /g'`;
我在做什么吗?
与bash:
用 space 替换所有换行符:
nw_strr="${strr//$'\n'/ }"
将所有字符串 \n
替换为 space:
nw_strr="${strr//\n/ }"
我正在将一些 sql 查询读入数据库中的变量,它包含换行符 (\n)。我想用 space 替换 \n(新行)。我尝试了互联网上提供的解决方案,但没有成功实现我想要的。这是尝试过的:
strr="my\nname\nis\nxxxx";
nw_strr=`echo $strr | tr '\n' ' '`;
echo $nw_strr;
我想要的输出是 "my name is xxxx" 但我得到的是 "my\nname\nis\nxxxx"。我也试过互联网上提供的其他解决方案,但没有成功:
nw_strr=`echo $strr | sed ':a;N;$!ba;s/\n/ /g'`;
我在做什么吗?
与bash:
用 space 替换所有换行符:
nw_strr="${strr//$'\n'/ }"
将所有字符串 \n
替换为 space:
nw_strr="${strr//\n/ }"