Linux 之Shell scripts的参数说明

shell • script默认参数

比如,ls -al 其中-al就是shell脚本参数,那么我们自己写的脚本参数该如何使用呢


 /path/to/scriptname arg1 arg2 arg3  arg4
 $0 $1 $2  $3  $4 


– $0:代表脚本程序本身

$1 表示的是第一个参数

$2 表示的第二个参数

$3 表示的是第三个参数....

依次类推

$# 表示的是参数的个数

$@ 表示的是每一个参数都是一个独立的变量 用双引号括起来的

$* 表示 脚本名后面跟的所有的变量都是是做一个字符串的 
案例1:

#!/bin/bash
echo "the script name is==>$0"
echo "total parameter number is==>$#"
[ "$#" -lt 2 ]&&echo "the number of parameter is lt 2"&&exit 1
echo "1st parameter==>$1"
echo "2nd parameter==>$2"
echo "your whole parameter is==$@"
exit 0

shift:造成参数变量号码偏移

案例2:

#!/bin/bash
echo "total parameter number is==>$#"
echo "your whole parameter is==>$@"
#shift one parameter
shift
echo "total parameter number is==>$#"
echo "your whole parameter is==>$@"
#shift three parameter
shift 3
echo "total parameter number is==>$#"
echo "your whole parameter is==>$*"

猜你喜欢

转载自blog.csdn.net/tryll/article/details/86600695