出现“bad for loop variable”错误通常是因为在使用不支持C风格循环的shell(如dash)来执行包含C风格循环的脚本。Ubuntu等Linux发行版为了加快开机速度,可能会将默认的/bin/sh链接到/bin/dash,而不是传统的/bin/bash。而dash不支持C风格的for循环语法。 解决“bad for loop variable”问题的建议 更改默认shell: 使...
可以通过ls -l /bin/*sh命令看到: 所以在使用sh命令执行脚本的时候实际使用的是 dash,而 dash 不支持这种 C 语言格式的 for 循环写法。 解决方法:使用bash代替sh运行脚本: bash test.sh
1、第一个简单的for循环 #!/bin/bash for i in 1 2 3 4; do echo $i; done 2、测试for的自增长的循环: #!/bin/bash for ((i=1; i<=5; i++)) do echo $i; done 如果会报错,没有则跳过: Syntax error: Bad for loop variable 原因:代码对于标准bash而言没有错,因为Ubuntu为了加快开机速度...
Syntax error: Bad for loop variable解决办法 在Ubuntu下写的shell文件t.sh执行时出现错误: 1t.sh:6: Syntax error: Badforloop variable 从ubuntu 6.10开始,ubuntu就将之前默认的bash shell更换成了dash shell,其表现为/bin/sh链接倒了/bin/dash,而不是传统的/bin/bash,这可以用file /bin/sh查看。 dash更...
在deepin下跑一个测试脚本,提示for 循环的语法错误:syntax error: Bad for loop variable 2014版本deepin是基于ubuntu,2015版deepin基于debian,问题应该出现再dash上,dash 是Debian的版本。 解决方法是:取消dash sudo dpkg-reconfigure dash 在选择项中选否,即可。
Bad for loop variable是什么意思? 如何修复Bad for loop variable错误? 在ubuntu下跑一个测试脚本,提示for 循环的语法错误,查了一下,系统启动问题。 代码对于标准bash而言没有错,因为Ubuntu为了加快开机速度,用dash代替了传统的bash,是dash在捣鬼。 解决方法是 取消dash sudo dpkg-reconfigure dash 在选择项中选No...
sh14.sh: 9: Syntax error: Bad for loop variable"错误时,通常代码在标准bash环境中并无问题,但Ubuntu采用dash替代bash以提升开机速度,进而引发此错误。解决办法是取消dash的使用:执行命令 sudo dpkg-reconfigure dash 在配置选项中选择"No"即可。以上步骤可帮助您解决在Ubuntu系统中遇到的此错误。
在deepin下跑一个测试脚本,提示for 循环的语法错误:syntax error: Bad for loop variable 2014版本deepin是基于ubuntu,2015版deepin基于debian,问题应该出现再dash上,dash 是Debian的版本。 解决方法是:取消dash sudo dpkg-reconfigure dash 在选择项中选否,即可。
当上面的错误出现时,是由于代码对于标准的bash来说没有错误,但是因为Ubuntu为了加快开机速度,用dash代替了bash,所以导致了错误。 取消dash的办法是: sudo dpkg-reconfigure dash 在选项中选No,就可以了。 参考: Ubuntu shell scripts报错:Syntax error: Bad for loop variable解决方法 [转]blog.csdn.net/iteye...
/bin/bash s=0 for (( i=1; i<=100; i++ )) do s=$(( $s + $i )) done echo $s 1. 2. 3. 4. 5. 6. 7. 8. 9. sh add.sh 报错: add.sh: 4: Syntax error: Bad for loop variable 代码没有错误,Ubuntu为了加快开机速度,用dash取代bash。