shift
コマンドは、シェルスクリプトやコマンドラインで使用されるコマンドで、位置パラメータを左にシフトします。これにより、最初の引数が削除され、次の引数が $1
に移動します。
基本的な構文は以下の通りです。
shift [n]
ここで、n
はシフトする位置の数を指定します。指定しない場合は、デフォルトで1つシフトします。
n
: シフトする位置の数を指定します。例えば、shift 2
とすると、最初の2つの引数が削除されます。#!/bin/bash
echo "最初の引数: $1"
shift
echo "シフト後の最初の引数: $1"
このスクリプトでは、最初の引数を表示した後、shift
を使って引数をシフトし、新しい最初の引数を表示します。
#!/bin/bash
echo "引数: $@"
shift 2
echo "シフト後の引数: $@"
このスクリプトでは、最初の2つの引数をシフトし、残りの引数を表示します。
#!/bin/bash
while [ "$#" -gt 0 ]; do
echo "現在の引数: $1"
shift
done
このスクリプトは、すべての引数をループ処理し、1つずつ表示します。
"$#"
を使うと便利です。