syntax error: Bad for loop variable

2489阅读 0评论2011-11-18 vsyour
分类:

=======================================
#!/bin/bash
# Using for and loop
# allen 2010/04/13
declare -i s # <==变量宣告
for (( i=1; i<=100; i=i+1 ))
do
        s=s+i
done
echo "The count is =l
=======================================
 
在ubuntu下跑一个测试脚本,提示for 循环的语法错误,查了一下,系统启动问题。
代码对于标准bash而言没有错,因为Ubuntu为了加快开机速度,用dash代替了传统的bash,是dash在捣鬼。
解决方法是 取消dash
sudo dpkg-reconfigure dash
在选择项中选No,即可。
dash 好像是Debian的版本。
 
默认/bin/bash /bin/sh都为dash
 
cat /etc/shells
 
echo $SHELL
上一篇:echo定位输出位置
下一篇:论坛总被人发广告怎么办 转载:bbs.xd10086.com