Bash - 连接字符串时消失的值

Bash - disappearing values while concatenating strings

我正在尝试将我从另一个文件 (xml) 获得的值插入到文件中,并且我希望它们排成一行。我检查了变量 - 它们是分开的,但是一旦我尝试以某种方式连接它们,就出现了问题,我只得到了先前字符串的一部分。

我的代码如下所示:

echo $usd
echo $gbp
all=$usd$space$gbp
echo $all

输出如下所示:

3,6525
5,5407
 5,5407

有人知道我做错了什么吗?或者我该怎么做才能恢复我的数据?

您的变量中有一个 CR。我可以用 vars

重现你的情况
usd="3,6525^M"
gbp="5,5407^M"
space=" "

(我在vi中用CTRL-V CTRL-M输入了^M,就是\r字符) 当你不想清理xml、usd和gbp时,你可以使用

all=${usd%$'\r'}${space}${gbp%$'\r'}