十四、Shell函数参数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/play_chess_ITmanito/article/details/77967641

在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 n 1表示第一个参数,$2表示第二个参数…

变量  意义
$n		传递给脚本的参数,n可以写成除0以外的参数,eg:$1表第一个参数;$2表第二个参数
$*     以一个字符串的形式显示所有参数
$@		显示所有参数,加""后就和$*不一样,(下面案例)
$?     上一个命令的退出状态,或者函数的返回值。0表示成功 1表失败  如果上一条不是前两种情况是方法,返回一个方法的返回值
$#     返回传递给脚本的参数个数
eg(带参数的函数示例):
#!/bin/bash
funWithParam(){
    echo "第一个参数是: $1 !"
    echo "第二个参数是: $2 !"
    echo " 第10个参数是:$10 !"
    echo " 第10个参数是:${10} !"
    echo " 第十一个参数是:${11} !"
    echo " 返回传递给脚本的参数个数: $# !"  # 参数个数
    echo "以一个字符串的形式显示所有参数: $* !"  # 传递给函数的所有参数
}
funWithParam 1 2 3 4 5 6 7 8 9 34 73

运行脚本:
结果1:
[root@h data]# chmod +x ./c.sh 
[root@h data]# ./c.sh 
第一个参数是: 1 !
第二个参数是: 2 !
 第5个参数是:5 !
 第5个参数是:5 !
 第十一个参数是:73 !
 返回传递给脚本的参数个数: 11 !
以一个字符串的形式显示所有参数: 1 2 3 4 5 6 7 8 9 34 73 !

结果2:
[root@h data]# ./c.sh 
第一个参数是: 1 !
第二个参数是: 2 !
第10个参数是:10 !
第10个参数是:34 !
第十一个参数是:73 !
返回传递给脚本的参数个数: 11 !
以一个字符串的形式显示所有参数: 1 2 3 4 5 6 7 8 9 34 73 !

注意:

$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数

猜你喜欢

转载自blog.csdn.net/play_chess_ITmanito/article/details/77967641