2017-04-25 6 views
0

getoptsを使用して複数のオプションを読み込む方法と、両方のオプションのソースとして1つのディレクトリを使用する方法が混乱します。(Bash Script)複数のオプションに同じディレクトリを使用するには?

./rpsm.sh -u -g /some/directory 

または

./rpsm.sh -ug /some/directory 

どのように私は両方のオプション-u-gのためのディレクトリとして/some/directoryを使用します。私が言うとしたら、私は...

より具体的にしましょうか?また


、私は-uの結果は、スクリプトを実行した後-g(またはその逆)の結果をリスト一覧表示する方法を?

+0

質問の2番目の部分は 'getopts'とは関係なく、'。/ rpsm.sh'の実装方法に完全に依存しています。 – chepner

+0

それぞれのパラメータが与えられておらず、もう一方が与えられている場合は、他のパラメータがデフォルトになります。あなたはこの動作を自分で実装する必要があります。 –

答えて

0

私はと-gの両方を同時に設定するために3番目のオプション(両方とも?)を使用することを定義します。

while getopts "u:g:B:" opt; do 
    case $opt in 
     u) u_dir=$OPTARG ;; 
     g) g_dir=$OPTARG ;; 
     B) u_dir=$OPTARG 
     g_dir=$OPTARG 
     ;; 
    esac 
done 

getoptsは、必要なショートカットを提供しません。

+0

返信いただきありがとうございます!私は3番目のオプションを使用します! –

関連する問題