位置参数变量
在写shell脚本的时候,难免会进行命令行传参,下面来介绍一下位置参数变量
-
为 数 字 , 0代表本身,即当前程序的名称 9代表第一到第九个参数,十以上的参数需要使用大括号,如${10} -
$* 表示命令行中的所有参数,把所有参数看成一个整体 -
$@ 也表示命令行中的所有参数,但是把每个参数区分对待 -
${@:起点} 由起点开始,取得后面所有的位置参数 -
${@:起点:个数} 由起点开始,取得指定个数的位置参数 -
$# 表示命令行中所有参数的个数 -
$? 命令或程序执行完后的状态,一般返回0表示执行成功
例:
#在hello.sh中
echo "参数个数为$#"
echo "第一个参数是$1"
echo "第二个位置开始数据${@:2}"
echo "第一个位置开始两个数据${@:1:2}"
------------------------------
#执行hello.sh
sh hello.sh 1 2 3
参数个数为3
第一个参数是1
第二个位置开始数据2 3
第一个位置开始两个数据1 2