Bash脚本 - 变量问题和|公元前

时间:2018-05-05 19:41:53

标签: bash bc

所以我有一个变量,我想与if语句中的另一个数字进行比较。

b=8.25
if [ $(echo "$b < 10" | bc) -ne 0 ]; then
echo "hey"
fi

我收到以下错误

(standard_in) 1: syntax error

我知道问题是将b变量放在里面,我怎样才能让它在那里保存?

请帮忙

2 个答案:

答案 0 :(得分:2)

您的脚本文件可能具有DOS样式的CRLF行结尾:

$ b=8.25
$ if [ $(echo "$b < 10" | bc) -ne 0 ]; then
> echo "hey"
> fi
hey

$ b=$'8.25\r'
$ if [ $(echo "$b < 10" | bc) -ne 0 ]; then
> echo "hey"
> fi
(standard_in) 1: illegal character: ^M
bash: [: -ne: unary operator expected

在您的脚本文件上运行dos2unix

答案 1 :(得分:0)

将比较存储在变量separateley

orWhere()