Bash - Echo 正在拆分我的字符串结果

Bash - Echo is splitting my string result

我有以下内容:

VERSION=$(curl -Is https://qa.me.com.br | sed -n '/^x-powered-by:/Ip' | sed '/x-powered-by:/I s/x-powered-by: //Ig')

预期的可变结果(但它有一个字符破坏了我的结果):

MEWeb - QA - 267_4_2548

之后,我通过以下方式展示:

echo "##teamcity[progressMessage 'Version is $VERSION']"

预计(不带“*”):

*##teamcity[progressMessage 'Version is MEWeb - QA - 267_4_2548']

实际:

']##teamcity[progressMessage 'Version is MEWeb - QA - 267_4_2548

我不知道是什么破坏了我的结果。 感谢您的帮助,对不起我的英语!

响应有回车return。 获得版本后,将其放入文件中。 echo $VERSION > test.txt

现在,要查看隐藏的字符,请使用: cat -v test.txt

您会看到: MEWeb - 质量检查 - 267_4_2548**^M**

您需要处理导致问题的那个字符。

添加

| tr -d '\r'

curl 命令的末尾(就在“)”之前)。