shell编程题(一)

求2个数之和

 #!/bin/bash

function add {
    if((  $# < 2  )); then
        echo "The arg in't correct"
    else
        sum=$(($1+$2))
        echo $sum
    fi
}

add 1
add 1 2

运行结果:

exbot@ubuntu:~/shareWin/linux/shell$ ./sum.sh 1 2
The arg in't correct
3

$#:相当于C语言的mian函数的(argc-1)传入的参数列表的值,表示输入值的数量减1,这个减去的1就是argv[0]。

其中:

$0:      表示C语言中argv[0],就是减去的那个1的数量代表的意义

$1,$2 …: 这些成为位置参数,相当于C语言中的argv[1],argv[2]

$@:        表示参数列表”$1”,”$2”... ,大多用在for循环后的in里面

$*:       等同$@

$?:          上一条命令的Exit Status

$$:         当前进程号

注意事项:

function functionfile {  // functionfile { 之间是有空格隔开的,如果不隔开,会报错

  /*code*/

}

猜你喜欢

转载自www.cnblogs.com/wanghao-boke/p/11568898.html