Shell脚本 - 我想遍历第二个参数到最后一个参数

时间:2011-06-14 10:26:33

标签: shell arguments

如何遍历第二个参数到最后一个参数 像:

for arg in $2-$@
do
  echo $i
done

请帮忙

3 个答案:

答案 0 :(得分:2)

shift中使用bash

shift
for arg in $@
do
  echo $arg
done

答案 1 :(得分:2)

实际上,不要相信参数......它们可能包含空格或shell的其他特殊元字符。双引号是shell脚本中的朋友。

shift;           #eat $1
for arg in "$@"
do
  echo "$arg"
done

当放入双引号时,“$ @”会采用特殊魔法来确保保留单词。比$ *好多了。 “$ *”会立即处理所有参数。

双引号不是一个完美的解决方案,只是最好的解决方案。

答案 2 :(得分:0)

args=("$@")

for arg in $(seq 2 `expr $# - 1`)
do
  echo ${args[$arg]}
done