如何跳过$ @中的第一个参数?

Ale*_*kin 19 bash shell

我的代码:

#!/bin/bash

for i in $@;
    do echo $i;
done;
Run Code Online (Sandbox Code Playgroud)

运行脚本:

# ./script 1 2 3

1
2
3
Run Code Online (Sandbox Code Playgroud)

所以,我想跳过第一个参数并得到:

# ./script 1 2 3

2
3
Run Code Online (Sandbox Code Playgroud)

Sie*_*geX 37

使用偏移参数扩展

#!/bin/bash

for i in "${@:2}"; do
    echo $i
done
Run Code Online (Sandbox Code Playgroud)

$ func(){ for i in "${@:2}"; do echo "$i"; done;}; func one two three
two
three
Run Code Online (Sandbox Code Playgroud)


kha*_*hik 20

使用shift命令.(抱歉,无法发布代码,现在没有bash访问权限).

FIRST_ARG="$1"
shift
REST_ARGS="$@"
Run Code Online (Sandbox Code Playgroud)