参考菜鸟教程:https://www.runoob.com/linux/linux-shell-passing-arguments.html
传递参数:
在脚本中写,例如:
#!/bin/bash
echo "Shell 传递参数实例!";
echo "执行的文件名:$0";
echo "第一个参数为:$1";
echo "第二个参数为:$2";
在命令行向脚本传递参数,例如:
chmod +x test.sh
./test.sh 1 2
显示的结果如下:
Shell 传递参数实例!
执行的文件名:./test.sh
第一个参数为:1
第二个参数为:2
echo "参数个数为:$#"; # 计算参数个数
echo "传递的参数作为一个字符串显示:$*"; # 引用所有参数
$* 与 $@ 区别:
相同点:都是引用所有参数。
不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 "1 2 3"(传递了一个参数),而 "@" 等价于 "1" "2" "3"(传递了三个参数)。