(7.4)Linux Shell脚本的自动化编程之函数传参:位置参数
原创
©著作权归作者所有:来自51CTO博客作者喜欢打篮球的普通人的原创作品,请联系作者获取转载授权,否则将追究法律责任
文章目录
1.函数位置参数与脚本程序的位置参数
- 函数的位置参数:在函数后面加的位置参数
- 脚本程序的位置参数:在执行脚本程序时,后面加的参数
$#指的是:函数预定义参数的个数
##提示用户需要输入3个参数
#!/usr/bin/bash
if [ $# -ne 3 ];then
echo "usage: `basename $0` par1 par2 par3"
exit
fi
fun3()
{
echo "$(($1 * $2 * $3))"
}
result=`fun3 2 3 4` ##函数内部的参数,2传递给$1,3传递给$2, 4传递给$3
echo "result is : $result"
## ./result.sh
result is : 24
-------------------------------------------------------------------------
fun3()
{
echo "$(($1 * $2 * $3))"
}
result=`fun3 $1 $2 $3` ## 脚本程序的位置参数传递给函数的位置参数 ,从左到右代表:$1代表执行脚本的第1个参数,$2代表执行
## 脚本的第2个参数
## result='fun3 $3 $2 $1' ## 从左——>右代表:$3代表执行脚本的第3个参数,$2代表执行脚本的第2个参数...
echo "result is : result"
## ./result.sh 2 3 4
result is : 24
-------------------------------------------------------------------------
fun3()
{
echo "$(($1 * $2 * $3))"
}
num1=$1
num2=$2
num3=$3
result=`fun3 $num1 $num2 $num3` ## 脚本程序的位置参数传递给函数的位置参数
echo "result is : result"
## ./result.sh 2 3 4
result is : 24