是不是重复传参?
来源:2-7 Shell中的函数

InnoDB
2022-02-19
xyz_with_params abc xyz 124
sh functions.sh xyz abc 123
脚本内调用函数xyz_with_params时,传递一次参数,执行脚本functions.sh时,传递一次参数,是不是重复了?
写回答
1回答
-
脚本传参和函数传参是不一样的,举个例子:
#! /bin/bash
hello(){
echo "函数内$1"
}
echo "脚本内$1"
hello # 调用hello()函数
如果我执行sh test.sh hello命令,给脚本传入一个位置参数,输出结果如下:
脚本内hello
函数内
脚本外部传参,在脚本内是可以使用$1这样去表示传入的第几个参数,但是对于函数内部的$1指的是调用函数传的位置参数,它并不是调用脚本传的位置参数。
112022-02-19
相似问题