2

私はUnixシェルスクリプトを初めて使用しますが、小さなスクリプトの作成についてサポートが必要です。

スクリプトの概要を次のように定義しました。

install.sh [-h|-a path|[-k path][-f path][-d path][-e path]]

つまり、ユーザーはいくつかを要求help (-h)したり、すべてを指定された場所にインストールしたり(-a path)、または1つ以上のコンポーネント-k, -f, -d -eを適切なパスにインストールしたり()することができます。引数がない場合は、ヘルプを表示する必要があります。

前もって感謝します。

4

1 に答える 1

5

を使用getoptsしてコマンドラインを解析するために使用できますbashこれは、 getoptsを使用してBash / Parsingコマンドライン引数から取得した例です(明らかに、必要に応じてオプションを調整する必要があります)。

#!/bin/bash

#Set a default value for the $cell variable
cell="test"

#Check to see if at least one argument was specified
if [ $# -lt 1 ] ; then
   echo "You must specify at least 1 argument."
   exit 1
fi

#Process the arguments
while getopts c:hin: opt
do
   case "$opt" in
      c) cell=$OPTARG;;
      h) usage;;
      i) info="yes"
      n) name=$OPTARG;;
      \?) usage;;
   esac
done

関連するSOの質問bashでコマンドライン引数を解析するにはどうすればよいですか?

詳細についてはgetopts、このmanページでbashを検索してください。

于 2012-05-27T19:31:25.077 に答える