Robert Munteanu Asked: 2010-04-20 06:15:43 +0800 CST2010-04-20 06:15:43 +0800 CST 2010-04-20 06:15:43 +0800 CST 访问从给定索引传递给 shell 脚本的所有变量 772 如何$@从第三个开始访问这些值?现在我将它们从三点传递到九点,但我认为有更好的方法: while getopts ":n" opt "$3 $4 $5 $6 $7 $8 $9"; do shell 2 个回答 Voted Best Answer Kyle Brandt 2010-04-20T06:20:04+08:002010-04-20T06:20:04+08:00 对我来说,这似乎是一种时髦的争论方法,但是: [kbrandt@kbrandt: ~/scrap] cat args args=("$@") echo ${args[0]} echo ${args[@]:1:2} echo ${args[@]:0:$#} [kbrandt@kbrandt: ~/scrap] bash args foo bar baz biz foo bar baz foo bar baz biz 我建议您查看有关命令行参数的常见问题解答(基本上是说 getopts 或循环/案例/移位)。 ThatGraemeGuy 2010-04-20T06:28:02+08:002010-04-20T06:28:02+08:00 我假设您在这种情况下使用 bash? 如果是这样,您应该使用shift。 一个例子: shift.sh 的内容: #!/bin/bash shift 3 echo $* 结果: graeme@graeme:~$ ./shift.sh one two three four five six four five six
对我来说,这似乎是一种时髦的争论方法,但是:
我建议您查看有关命令行参数的常见问题解答(基本上是说 getopts 或循环/案例/移位)。
我假设您在这种情况下使用 bash?
如果是这样,您应该使用shift。
一个例子:
shift.sh 的内容:
结果: