83

如何n在 Bash 中获取第 th 个位置参数,n变量在哪里?

4

3 回答 3

124

使用 Bash 的间接功能:

#!/bin/bash
n=3
echo ${!n}

运行该文件:

$ ./ind apple banana cantaloupe dates

产生:

cantaloupe

编辑:

您还可以进行数组切片:

echo ${@:$n:1}

但不是数组下标:

echo ${@[n]}  #  WON'T WORK
于 2009-09-30T15:26:20.137 回答
13

如果N保存在变量中,请使用

eval echo \${$N}

如果是经常使用

echo ${12}

自从

echo $12

不一样的意思!

于 2009-09-30T12:34:27.650 回答
-2

处理位置参数

参数扩展

$0:第一个位置参数

$1 ... $9:参数列表元素从 1 到 9

于 2009-09-30T12:33:05.620 回答