Unix脚本打印参数

时间:2014-05-11 11:17:11

标签: bash unix arguments

我想在控制台中打印一些参数 但是我想用从整数给出的数字打印参数

declare -i I=2
declare -i I=4

我想打印2号和4号参数,我该怎么做 不使用以下if语句

if [ $I -eq 2 ]; then
echo $2
fi 


我正在寻找的是这样的想法 echo $($I) #first access $I, which is 4 and {
{1}}

2 个答案:

答案 0 :(得分:1)

看起来你正在寻找variable indirection。使用方式如下:

func() {
    p=4
    echo "${!p}"
}

<强>测试

func aa bb cc dd ee
dd

答案 1 :(得分:1)

要查看为每个参数分配的内容,可以使用此循环。

for n in $(seq 1 $#)
do
  echo $n ${!n}
done