回答
使用bash的间接功能:
#!/bin/bash
n=3
echo ${!n}
运行该文件:
$ ./ind apple banana cantaloupe dates
产地:
cantaloupe
编辑:
你也可以做数组切片:
echo ${@:$n:1}
而不是数组下标:
echo ${@[n]} # WON'T WORK
$1 $2 ... $n
$0
包含脚本的名称。
正如你在Bash by Example中看到的,你只需要使用自动变量$ 1,$ 2等等。
$#用于获取参数个数。
这个答案没有解决OP的原题。他特别询问了如何通过存储在变量中的索引来获取参数。 – 2016-11-29 01:36:31
如果N
保存在一个变量,使用
eval echo \${$N}
如果它是一个经常使用
echo ${12}
因为
echo $12
并不意味着一样的!
'$ {12}'和'$ 12'之间有什么区别? – HelloGoodbye 2015-07-02 08:07:56
嗨@HelloGoodbye,'$ 12'表示'$ 1'和字符'2'。 '$ {12}'表示第12个参数。 – 2015-07-02 10:01:40
- 1. 如何获得第n位值
- 2. 如何获得excel中第n个列的非空单元格的位置?
- 3. WordPress的 - 如何获得循环的第n个职位?
- 4. BASH - 位置参数
- 5. 如何获得前一个bash命令的倒数第二个参数? (在交互式bash shell中)
- 6. 如何在命令行获得先前命令的第n个参数?
- 7. 如何获得Java中队列中的第n个项目?
- 8. 在bash字符串后如何获得的第一个数字
- 9. 我如何每隔n秒获得一个背景位置?
- 10. 如何从Haskell的10元组中获得第n个元素?
- 11. 如何获得LinkedList中的第n个元素<T>?
- 12. 如何在javascript中获得来自url的第一个参数
- 13. 如何在C++的main()中获得第一个参数?
- 14. 获得集合的第n个元素
- 15. 获取整数的第n位精度
- 16. 如何从二进制获得N位
- 17. 如何在bash中获得printf格式的特定参数?
- 18. 如何获得一个数组中的Widget的位置 - python
- 19. 如何获得Qslider中第一个和最后一个刻度线的位置?
- 20. 在第n个位置插入元素
- 21. 如何从FILTERED范围获取第一个(第N个)行/列? (内置函数)
- 22. 用Linq获得第N个值
- 23. NSPredicate String获得第n个项目
- 24. 获取元素相对于第n个父元素的位置
- 25. jQuery:获取对象的第n个位置
- 26. 如何用R总结得到第n百分位数?
- 27. 如何查找第n个标记的位置
- 28. 从agda获得第二个参数?
- 29. 如何获得独立序列的第n个元素?
- 30. 获得第n阵列行数PHP
任何人都可以给出一些解释为什么$ {@ [n]}不起作用? – 2012-04-14 23:06:03
@AlexanderOleynikov它会导致“错误的替代”错误;我假设因为'@'(和'*')是“特殊参数”,并且因为它们不是有效的数组名称? '$ {@}'* does *表示编号的参数,但“@”不是一个数组,并且支持不会被实现来解析它,而例如, “'$ {unsetvariable}'”会产生空的输出,因为它是一个有效的数组/变量名称,尚未设置(这些异常特别在bash的源代码中处理,我猜)。我试图在'男士bash'中找到一个更好的理由,但是扫描@使我没有耐心。 ,P – 2015-11-30 17:03:17