Bash ですべての引数を渡す
Bash スクリプトでは、主に構文 $1 $2 $3 ... $N
を使用して関数内で変数を渡します。 ここで、N
は 1, 2, 3, ...
のような負でない整数です。
しかし、すべての引数を渡すという同じタスクを実行するショートカットの方法があります。 この記事では、関数ですべての引数を渡す方法について説明します。
また、トピックを理解しやすくするために、必要な例と説明を示します。
Bash ですべての引数を渡す
この目的のために、$@
を使用してすべての引数を渡します。 以下のコード例を見てみましょう。
My_Friends () {
echo "Your friend's names are: "$@""
}
My_Friends Alen Walker John
上記の例では、My_Friends
という名前の関数に 3つのパラメーターを渡しました。 $@
を使用して関数内のすべての関数を受け取りました。
上記の例を実行すると、以下のような出力が得られます。
Your friend's names are: Alen Walker John
同じタスクを実行する従来の方法は、次のようになります。
My_Friends () {
echo "Your friend's names are: $1 $2 $3"
}
My_Friends Alen Walker John
上記のコードでは、すべてのパラメーターを手動で含めました。 これにより、前の例と同じ出力も得られます。
すべての引数を個別に処理する必要がある場合、それらを手動で含める方法はないことに注意してください。 たとえば、以下の例のように、渡されたすべての引数を使用して追加操作を実行する場合、このショートカット メソッドに従うことはできません。
以下の例を確認してみましょう。
Add () {
echo The sum is: $(( $1+$2+$3 ))
}
Add 1 2 3
説明したように、最近共有された例では、すべてのパラメーターを個別に言及する必要があります。 上記のプログラムのこの出力は、次のようなものです。
The sum is: 6
この記事で使用するコードはすべて Bash で記述されています。 Linux シェル環境でのみ動作します。
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn