shell 默认的变量设定
针对脚本执行后接的参数,shell script 有默认的变量设定,根据这些变量我们可以直接调用
image.png
其他特殊变量说明
image.png
脚本案例
- 显示程序文件名
- 共有多少参数
- 参数小于 2 则告知参数太少
- 全部参数内容为何
- 第一个参数是?
- 第二个参数是?
[root@k8s-node2 tmp]# cat filename.sh
#!/bin/bash
echo "文件name 是 ===> $0"
echo "共有多少参数 ===> $#"
[ $# -lt 2 ] && echo "the number of parameter is less than 2. Stop here" && echo 0
echo "第一个参数为 ===> $1"
echo "第二个参数为 ===> $2"```
参数变量位置偏移 shift
脚本后面的参数通过位置移动变量位置 拿掉前面的参数
例子
[root@k8s-node2 tmp]# cat shift_parss.sh
#!/bin/bash
echo "total ====> $@"
echo "yout ====> $#"
shift
echo "total ====> $@"
echo "yout ====> $#"
shift 3
echo "total ====> $@"
echo "yout ====> $#"
[root@k8s-node2 tmp]# ./sh
shell.sh shift_parss.sh
[root@k8s-node2 tmp]# ./shift_parss.sh on de du ls za rs
total ====> on de du ls za rs
yout ====> 6 ---》显示原来的参数
total ====> de du ls za rs
yout ====> 5 --->去掉了on参数
total ====> za rs -->从上面去掉的结果中再去掉3个参数
yout ====> 2
看书笔记仅供参考