Удалите первый элемент из $ в ударе [дубликат]

119
задан Herms 23 April 2010 в 19:26
поделиться

3 ответа

Используйте shift ?

http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_09_07.html

В основном, прочтите $ 1 для первый аргумент перед циклом (или $ 0 , если вы хотите проверить имя сценария), затем используйте shift , затем переберите оставшиеся $ @ .

139
ответ дан 24 November 2019 в 01:46
поделиться

В другом варианте используется нарезка массива:

for item in "${@:2}"
do
    process "$item"
done

Это может быть полезно, если по какой-то причине вы хотите оставить аргументы на месте, так как shift деструктивен.

136
ответ дан 24 November 2019 в 01:46
поделиться
firstitem=$1
shift;
for item in "$@" ; do
  #process item
done
39
ответ дан 24 November 2019 в 01:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: