[root@shell-yankerp sh]# cat aaa.sh #!/bin/bash expr $1 + 1 &>/dev/null if [ "$?" -eq 0 ] then echo "输入的是整数~" else echo "/bin/sh $0 请输入一个整数" fi [root@shell-yankerp sh]# sh aaa.sh 123 输入的是整数~ [root@shell-yankerp sh]# sh aaa.sh zhangsan lisi /bin/sh aaa.sh 请输入一个整数 [root@shell-yankerp sh]#

实战:第一关判断参数个数是否为2.若不是请给出提示
第二关判断参数是否为整数,如果不是那么继续给出提示
第三关做运算~~~
#!/bin/bash if [ "$#" -ne "2" ] then echo "/bin/bash $0 请输出两个数值..." exit 1 fi #no.2 a=$1 b=$2 expr $1 + 1 &>/dev/null if [ "$?" -ne "0" ] then echo "请输入数值..." exit 1 fi #no.3 echo "a+b=$((a+b))" echo "a-b=$((a-b))" echo "a/b=$((a/b))" echo "a*b=$((a*b))" echo "a**b=$((a**b))" echo "a%b=$((a%b))"
剖析:在以上脚本中其实很简单,第一if 如果输入的不是两个传参值,那么给出提示 这是第一段if条件语句,如果输入的是两个数值,那么继续执行下面的条件,在第二个条件使用了位置参数变量$1 使用了expr命令来判断用户输入的是数字还是字符串,当用户输入的是数字那么就是返回是成功的 那么我们使用了if语句 如果上面命令执行成功 如果不等于0 那么给出相应的提示,最后前面的两个条件成立,那么接下来进行算法,这个前面是说过的。
执行脚本如下:

好了 本次就到这里,希望阅读者快快吸收~~~ 后续不断更新 谢谢大家,也希望大家多多支持易采站长站。
声明:以上文章是<<跟着老男孩学Linux运维Shell编程实战>>第五章;一部分看完的总结!










