【问题标题】:syntax error in expression (error token is "1") bash script表达式中的语法错误(错误标记为“1”)bash脚本
【发布时间】:2019-01-25 17:18:06
【问题描述】:

当我尝试测试以下内容时出现语法错误,这似乎是由于存在的 0 所致。我在这里想念什么?

这是代码:

echo =========================================
echo sum of 4 arguments:"$requestedsum"
if [ -n "$requestedsum" ]
then 
(( $(echo "$requestedsum > $vg_free_space" |bc)));
echo "Requested space is not available in VG";
else
echo "Requested space is available";
fi


=========================================
sum of 4 arguments:0
10
./sizecheck.sh: line 26: ((: 0
1: syntax error in expression (error token is "1")
Requested space is not available in VG

【问题讨论】:

  • 你能分享整个脚本的相关部分吗?
  • (( ... )) 是有条件的,你想让那行做什么?
  • @BenjaminW,我正在尝试将 requestssum 与现有空间数进行比较。
  • @mmenschig,我已经通过外部链接粘贴了 bash -x 输出。我无法在这里发布它,因为网站要求我输入文字来完成我的编辑。如果还需要什么,请告诉我。
  • 比较的结果是什么?你想在条件中使用它吗?您的代码使用条件作为命令。你能描述一下每种可能的结果会发生什么吗?

标签: bc lvm


【解决方案1】:

我明白了: 请求总和='0 10'

似乎不是一个简单的值。尝试为请求和分配一个简单的值。

【讨论】:

  • 不确定“0”是从哪里来的,因为总和基本上是 $1+$2+$3+4。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多