开始
一个简单的求和脚本,如下所示
#!/bin/bash
read -p "please: " nu
cnt=0
for ( (i=1;i<=$nu;i++) )
do
cnt=$(( $cnt + $i ))
done
echo $cnt
你以为一切真的这么简单,图样图森破
w(゚Д゚)w w(゚Д゚)w
格式改来改去还是不对,空格删了又加.
结果当然还是...不对 ╮(╯▽╰)╭ ╮(╯▽╰)╭
只能百度了 阿西吧
真的找到了
Ubuntu切换默认sh为bash或者dash
原来ubuntu为了加快脚本执行速度,默认使用的是dash( -__-”).呃,dash是什么玩意.我连bash脚本写的都不熟,ubuntu真是会搞事情 ̄へ ̄
没关系直接用bash
还是不对怎么回事啊,有完没完啊(︶^︶)=凸
这回删掉循环条件里的空格试试
#!/bin/bash
read -p "please: " nu
cnt=0
for ((i=1;i<=$nu;i++))
do
cnt=$(( $cnt + $i ))
done
echo $cnt
竟然好了,~( ̄▽ ̄~)(~ ̄▽ ̄)~
总结
- ubuntu 16.04默认使用的是dash,写脚本时要注意
- bash脚本中的for循环中的条件语句不能有空格
参考文献
https://www.2cto.com/os/201305/210033.html
https://blog.csdn.net/xp5xp6/article/details/50527663
https://blog.csdn.net/gatieme/article/details/52136411
http://www.yanwenzi.com/gaoxing/ 好多颜文字的说