shellは、入力パラメータの数をどのように判断するのか。

Shellスクリプトでは、$#変数を使用して入力パラメータの数を確認できます。$#はスクリプトに渡された引数の数を表します。

以下は、入力パラメータの数を判定するためのサンプルスクリプトです。

#!/bin/bash

if [ $# -eq 0 ]; then
    echo "No arguments provided."
elif [ $# -eq 1 ]; then
    echo "One argument provided."
else
    echo "More than one argument provided."
fi

上記の例では、if条件分岐を使用して$#の値を判断し、$#が0の場合はパラメータが渡されていないことを意味し、1の場合は1つだけパラメータが渡されていることを意味し、それ以外の場合は複数のパラメータが渡されていることを意味します。

例えば、このスクリプトを端末で実行し、異なる数の引数を渡してテストすることができます。

$ ./script.sh
No arguments provided.

$ ./script.sh arg1
One argument provided.

$ ./script.sh arg1 arg2 arg3
More than one argument provided.
bannerAds