ユーザーが渡したパラメータを取得するために単純なシェルスクリプトを試していますが、エラーは発生しないようです。時には動作しますが、ほとんどの場合は動作しません(奇妙です)。
helpFunc()
{
echo ""
echo "Usage: cdcode [-w] [-f paramF] [-h]"
echo -e "\t-w for WebDev folder"
echo -e "\t-f Specify a custom folder to concat at the end to CD into"
echo -e "\t-h Display help"
echo
}
while getopts "a:b:c:" opt
do
case "$opt" in
a ) paramA="$OPTARG" ;;
b ) paramB="$OPTARG" ;;
c ) paramC="$OPTARG" ;;
? ) helpFunc ;; # Print helpFunc in case parameter is non-existent
esac
done
echo $paramA
echo $paramB
echo $paramC
走る
$ cdcode -a aaa -b bbbb -c cccc
出力
$
$
$
変数がparamA, paramB, paramC
まだ初期化されていないため、3 つの空行が表示されます。