- 论坛徽章:
- 0
|
本帖最后由 lbbei 于 2015-06-22 17:18 编辑
问题解决,不是语法问题,是WINdows和Liunx的格式问题。最后还是想问下:shell里 条件语句怎么直接比较数值?还要转成字符串,挺不理解的。
从文件里读出一个数值,有正有负带小数, 判断读出来的这个数是否小于0,是,取其绝对值,运行一段程序。否,运行另一段程序。可是下面的程序怎么总是不对呢? 总是提示:而且是比程序行(X行)多1处, lineX+1:syntax error: unexpected end of file. 请高手帮忙解惑,原脚本运行是没有问题的,自从加了下面一段以后就总是提示错误。
sttime=`saclhdr -O ${STA}.${YEAR}.${DAY}.bbz`
edtime=`echo "$sttime+87000"|bc`
echo "*********sttime= $sttime ,,, edtime= $edtime **********"
bi=`awk 'BEGIN{print int('$sttime')}'` ##########这里做的还是字串比较,能不能直接进行数值比较??
if [ "$bi" -ge 0 ]; then
sac<<eof
。。。。
q
eof
else
sttime=`expr 0 -$sttime` ###########好像这句也不对,echo ${sttime#-} 这样去掉-号了
sac<<eof
。。。
q
eof
fi ###########第X行
现在两个小问题都找到笨办法解决了,可是怎么还是 line X+1: syntax error: unexpected end of file
呢?没找到哪里有语法错误了啊. |
|