shell : Command not found 问题

本文介绍了一个关于Shell脚本中因忽视空格而导致的错误案例。具体问题是在条件判断语句中,由于前后空格的存在使得命令无法被正确解析。通过修正空格问题,脚本成功实现了对文件中特定计数的读取,并根据计数结果发送警告邮件。
JMSState_file 是一个文件,下面的第一个语句从中取出JMS_Pending_Count的数目,echo $JMSPENDINGCNT 可以
看到是一个数字。  但是在 if [$JMSPENDINGCNT -gt 100] 部分居然报错, 提示 Command not found,   排错了很久才参考其他脚本知道问题点 , 修改更改为   if [ $JMSPENDINGCNT -gt 100 ] ,注意其中前后的空格,就是这两个空格导致了问题出现。 shell 脚本是不是因为太强大,所以这些写法也比较苛刻 ?? 
 
 
JMSPENDINGCNT=`cat JMSState_file|grep JMS_Pending_Count|tr -d 'L'|awk -F ':' '{print $2}'`
if [$JMSPENDINGCNT -gt 100]
  then
      echo "Check Time: `date '+%y/%m/%d %H:%M:%S'`,$HNAME warning" >> $WorkDir/alert_jmsjdbc.flag
      echo " $HNAME "|mailx -s "`hostname`:$HNAME JMS Pending Count>=100,please check" $MailTo
  else
      echo "Check Time: `date '+%y/%m/%d %H:%M:%S'`,$HNAME JMS is normal." >> $WorkDir/log/$MON_DATE.log     
      echo "$HNAME JMS Queue ok" >> $WorkDir/alert_jmsjdbc.flag
fi

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-745249/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/35489/viewspace-745249/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值