getopts Unix入力

getopts Unix入力

したがって、次のコードでは、ユーザーが自分のコードに次のように入力した入力を自分のコードから読み取るようにします。

#./MyProject -a -b OR -b -a

ただし、構文エラーが引き続き発生し、プログラムによって提供されたテストに失敗します。次のテストは次のとおりです。入力がa&bではありません(例:cz)、入力がまったくありません、パラメータが少なすぎ、パラメータが多すぎます、

#Use just prints out the format like this : ./MyProject -a -b

 - if ( ! getopts ":ab" arg) then  
echo $use  
fi 

 while [getopts ":ab" arg2] 
do
         case $arg2 in

        t) if (($1 != "t" && $1 != "o")); then
         echo $use 
     fi   
 esac   
done  
}

ベストアンサー1

次の例が役に立ちます。

#!/bin/bash

usage() {
    echo "Usage: $0 -a -b"
    exit
}

while getopts ":a:b:" arg; do
    case $arg in
        a)
            a=${OPTARG}
            (($a == "t" || $a == "o")) || usage
            ;;
        b)
            b=${OPTARG}
            ;;
        *)
            usage
            ;;
    esac
done

echo $a
echo $b

おすすめ記事