
Instrukcja shift pozwala usunąć podany do skryptu z linii komend parametr.
Składnia instrukcji shift
shift liczba_parametrów
Parametr liczba parametrów
Parametr liczba parametrów – określa ilość parametrów linii poleceń do usunięcia. Usuwanie zaczyna się od parametru $1. Parametr liczba parametrów jest opcjonalny jeżeli go nie określimy zostanie usunięty jeden parametr linii poleceń.
Przykład użycia instrukcji shift
#!/bin/bash echo $1 shift echo $1 shift 2 echo $1
Wynikiem wykonania skryptu z parametrami 1,2,3,4 będzie:
$ . polecenie_shift.sh 1 2 3 4 1 2 4
Jak widać pierwsze wywołanie instrukcji shift usuwa wartość pierwszego parametru (1) i przesuwa resztę parametrów o jeden w lewo. Wartość drugiego parametru ($2) jest przesuwana do pierwszego ($1), trzeciego ($3) do drugiego ($2) itd. Drugie wywołanie usuwa dwa kolejne parametry i wartość 4 zostaje zapisana w zmiennej $1.
Najczęściej instrukcja shift wykorzystywana do wykonywania jakiejś operacji w pętli (np. ) na wszystkich parametrach np. z pętlą while:
#!/bin/bash
while [ "$#" -gt "0" ]
do
echo $1
shift
done
W kursie ukazały się następujące części:
