我在bash中仍然非常环保算术。我得到了一些帮助清理2部分查询从我有的Linux盒子获取特定值。但是,我现在收到一个语法错误,我似乎无法拼凑在一起。任何帮助理解为什么会非常感激。
查询是:
echo $(( (2147483633-"$(grep -i isrs /proc/zem0 | grep -Eo '[0-9]+$')")/5184000 ))
并且错误以
的形式返回-bash: (2147483633-"16458074")/5184000 : syntax error: operand expected (error token is ""16458074")/5184000 ")
请帮我理解原因!非常感谢,提前!
答案 0 :(得分:1)
问题在于引号
试试这个:
echo $(( (2147483633-$(grep -i isrs /proc/zem0 | grep -Eo '[0-9]+$'))/5184000 ))
<强>更新强>
因为
echo $(( (2147483633-"$(grep -i isrs /proc/zem0 | grep -Eo '[0-9]+$')")/5184000 ))
转换为
echo $(( (2147483633-"some_number")/5184000 ))
并且在数字周围有引号对算术运算无效