bash脚本-求和

开始

一个简单的求和脚本,如下所示

#!/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

竟然好了,~( ̄▽ ̄~)(~ ̄▽ ̄)~
这里写图片描述

总结

  1. ubuntu 16.04默认使用的是dash,写脚本时要注意
  2. 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/ 好多颜文字的说

猜你喜欢

转载自blog.csdn.net/u012946230/article/details/80040008
今日推荐