【发布时间】:2015-12-07 15:55:19
【问题描述】:
我有以下简单的 bash 脚本,它将命令的输出存储在变量中并打印出来:
size=$(curl -sI "http://speedtest.reliableservers.com/1GBtest.bin" | grep -i "length")
echo "--> ${size} <--"
在终端中运行命令时,我得到以下输出:
Content-Length: 1073471824
但是当我运行这个调用命令的 bash 脚本时,我得到以下输出:
<--Content-Length: 1073741824
发生了什么事?
【问题讨论】:
-
@Kenney 这可能是终端编码问题吗?
-
我在 Ubuntu 终端中以
./wtf.sh的身份运行它。sh wtf.sh和bash wtf.sh的结果相同。 -
@Kenney 对我来说,这两个结果都是“ASCII 文本,带有 CRLF 行终止符”。然而,Vim 显示
2.txt只有一行。 -
grep -i "length.*[0-9]"或使用dos2unix。