![]() |
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。
|
|
Googleのunix.com
|
|||||||
| シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| はg + +とは、 - Rオプション | eternalflame | 高レベルのプログラミング | 0 | 2008年4月14日 02:57午後 |
| - nオプション | ラヴィrajクマー | シェルプログラミングとスクリプティング | 1 | 2008年1月3日 09:20午前 |
| シモンズ: 65535 、無効な数値以外の引数を- pオプションです | gogogo | Sun Solaris | 5 | 2006年11月19日 06:20午後 |
| 秀オプション | lesstjm | UNIXの詳細&エキスパートのためのユーザー | 1 | 2005年11月2日 01:54午後 |
| カット- fオプション | 435 Gavea | UNIXのダミー質問と回答のため | 1 | 2003年11月10日 05:50午後 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
オプションの順: getoptsが見つからない場合、次のオプションの引数を
こんにちはすべて、
私getoptsを使用してコマンドラインオプションの解析です。 引数として次のオプションが続く場合は、任意の引数ではありませんしているこの問題は、必須の引数はオプションの"以下の通りです: " 。 下のスクリプトです: getopts :のHD :トン中:秒:リットル :金:オプトインする 場合" $ "を選ぶ - |時間- \ ? )の使用; ; - D )のデバッグ\u003d真;輸出SCRIPT_LOG_LEVEL \u003dデバッグ; ; - T )でDEVTYPE \u003d " $ OPTARG " ; ; - S )をSIG_IP \u003d " $ OPTARG " ; \u003d " $ OPTARG : SOCKS5_SERVER輸出9001 " ; ; \u003d " $ - l )のHOST_LOGIN OPTARG " ; ; - pの)パスワード\u003d " $ OPTARG " ; ; - f )のcl_cfile_specd \u003d 1 輸出RUNNING_CONFIG_FILE \u003d " $ OPTARG " ; ; * ) logmsg "認識されないパラメータの使用" ; ; esac 完了した 私としては、スクリプトを実行する: $ 。 / script.sh - Dの- Tのrdsk -は/ usr / local / sc.conf 12.3.4.5 - lの達人- pの- fを秒 オプション- pをとっている- fを引数として。 どのようにエラーをして、スクリプトを終了する場合に必須の引数は、スクリプトに渡されません助け。 また、どのように対処するためのオプションを持つ-つまり-ログファイル。 上記の問題を解決してください |
|
||||
|
強制している場合は設計上の発言として、おそらく、 "オプション"すべきではない。
は、 whileループの後、パスワードや設定ファイルのチェックが解除され、死亡する場合には何ですか? 私はそこに長いgetoptsのオプションを取得するには、標準的な方法だと思うことはありません。あなたはあなた自身のロールすることができます。 コード:
while :
do
case $# in 0) break;; esac
case $1 in
-h|-\?|--help) usage;;
-d|--debug) DEBUG=true;export SCRIPT_LOG_LEVEL=DEBUG; shift ;;
-t|--type) DEVTYPE="$2"; shift; shift ;;
-s|--socks) SIG_IP="$2"; export SOCKS5_SERVER="$2:9001"; shift; shift ;;
-l|--login) HOST_LOGIN="$2"; shift; shift;;
-p|--password) PASSWORD="$2"; shift; shift ;;
-f|--config-file) cl_cfile_specd=1
export RUNNING_CONFIG_FILE="$2"; shift; shift ;;
-*) logmsg "Unrecognized param usage";;
esac
done
|