我在脚本中有以下几行:
NR_OF_REQUESTS_IN_PROGRESS=$(db2 -x "select count(*) from my_table where date='$MY_DATE' and status = 'EXPECTED_STATUS' and id in ($CURRENT_ID, $OTHER_ID)" | awk '{print $1}')
while [[ $NR_OF_REQUESTS_IN_PROGRESS -gt 0 ]]; do
[...]
done现在,这在我的env中非常有效,但是当我的一位同事测试它时,他得到了该行的算术语法错误。怎么会这样?
发布于 2014-04-08 15:39:48
如果您在分配到set -vx的任务之前添加了NR_OF_REQ..,那么您的同事的屏幕显示是什么?
问题几乎可以肯定的是,对db2的调用没有返回一个数值。
请记住,set -vx是您的朋友(即使它在处理大型和/或嵌套的期间/for/ if -if代码块时相当笨拙:-)
IHTH
https://stackoverflow.com/questions/22936695
复制相似问题