ルーレットk8 カジノ【 getopts 】コマンド――bashのシェルスクリプト内でオプションを解析する仮想通貨カジノパチンココイン チェック イーサリアム 現物 取引

ルーレットk8 カジノ【 getopts 】コマンド――bashのシェルスクリプト内でオプションを解析する仮想通貨カジノパチンココイン チェック イーサリアム 現物 取引

ルーレットk8 カジノ【 getopts 】コマンド――bashのシェルスクリプト内でオプションを解析する仮想通貨カジノパチンココイン チェック イーサリアム 現物 取引

映画 近日k8 カジノ 「Linux基本コマンドTips」のインデックス

はい ふり スロット 実機Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、bashのシェルスクリプト内でオプションを解析する「getopts」コマンドです。

目次

getoptsコマンドの概要 | 書式| オプション一覧

実行例オプションを解析するエラーメッセージを表示しない引数付きのオプションを使用するgetoptsコマンドとは?

 「getopts」は、bashのシェルスクリプト内でオプションを解析する際に役立つコマンドです。自作のシェルスクリプトで「-a」のような「ハイフン+アルファベット1文字」のオプションを扱う際に便利です。「-f ファイル名」のように引数を取るオプションも解析できます。

 getoptsコマンドはbashのビルトインコマンド(内部コマンド、シェルコマンド)です。このため、「man」コマンドではなく、「help」コマンドや「man bash」で詳細を確認します。

 シェルスクリプトのオプションを解析する他の方法もあります。まず、getoptsとよく似た名前で用途も同じ「getopt」コマンド(/usr/bin/getopt)があります。getoptコマンドはgetoptsとは異なり、「–」から始まるロングオプションも扱うことができます(連載第379回)。

 この他、引数を1つずらす「shift」コマンドを使ってオプションを解析することも可能です。

目次に戻る

コマンドの書式

getopts オプション文字列 変数名

※ [ ]は省略可能な引数を示しています。

目次に戻る

getoptsの主なオプション

 getoptsにはオプションはありません。なお、オプション文字列の先頭に「:」記号を入れるかどうかによって、エラーメッセージ表示の有無を変更できます(本文を参照)。

目次に戻る

オプションを解析する

 getoptsでオプションを処理する際には、一般に「while文」と「case文」を組み合わせて使用します(※1)。

※1 opt1.shにあるwhile文については「シェルスクリプトに挑戦しよう(14)」を参照。case文については「シェルスクリプトに挑戦しよう(9)」を参照。

 ここではスクリプト1を使って、getoptsの動作を見てみましょう。スクリプト1(opt1.sh)は、オプション「-a」「-b」「-c」を使用し、それぞれのオプションに応じてメッセージを表示します。

#! /bin/bashwhile getopts abc OPTdo case $OPT in a) echo "[-a] が指定された";; b) echo "[-b] が指定された";; c) echo "[-c] が指定された";; *) echo "該当なし(OPT=$OPT)";; esacdoneスクリプト1(opt1.sh)

 opt1.shの2行目にある「getopts abc OPT」の「abc」の部分は、利用するオプションの種類を指定しています。ここでは「-a」「-b」「-c」の3つです。続く「OPT」はgetoptsが解析した結果をセットする変数の名前で、case文で参照($OPT)しています。

 画面1ではopt1.shの動作を確認しています。オプションを指定する際、「-a -b」のように個別に指定できる他、「-bc」のようにまとめて指定できることが分かります。さらに、getoptsで指定していないオプションが与えられた場合は、変数OPTに「?」という文字がセットされる様子も分かります。

画面1画面1 オプションを解析したところ

目次に戻る

エラーメッセージを表示しない

 getoptsに指定していないオプションを使用すると、画面1のように「不正なオプションです — d」、あるいは「illegal option — d」のようなメッセージを表示します。

 このようなgetoptsのエラーメッセージを表示したくない場合は、「getopts :abc OPT」のように、オプション文字列の先頭に「:」記号を入れます。

 スクリプト2(opt2.sh)では、先ほどのopt1.shの一部を書き換えて、独自のエラーメッセージを表示するようにしました。「OPTARG」という組み込み変数にはgetoptsが現在解析しようとしている文字列が入っています(※2)。abc以外のオプションを指定したとき、変数OPTには、解析結果である「?」という文字が入ります。

※2 getoptsコマンドでは、この他、2つの組み込み変数を利用できる。「OPTERR」はエラー出力を制御する変数で、初期値は1。値を0にすると「:」を付けたときと同様にエラー出力を抑制する。「OPTIND」は現在処理している引数の位置を表す。

#! /bin/bashwhile getopts :abc OPTdo case $OPT in a) echo "[-a] が指定された";; b) echo "[-b] が指定された";; c) echo "[-c] が指定された";; *) echo "$OPTARGは定義されていません(OPT=$OPT)";; esacdoneスクリプト2(opt2.sh)画面2画面2 getoptsコマンドで独自のエラーメッセージを出力したところ

目次に戻る

引数付きのオプションを使用する#CmsMembersControl .CmsMembersControlIn {width:100%;background:url(https://image.itmedia.co.jp/images/spacer.gif) #DDD;opacity:0.05;filter:progid:DXImageTransform.Microsoft.Alpha(Enabled=1,Style=0,Opacity=5);z-index:1;}続きを閲覧するには、ブラウザの JavaScript の設定を有効にする必要があります。仮想通貨カジノパチンコトータル ナビ au

コメントを残す

業界連盟:k8 カジノ k8 カジノ パチンコ 大工 の 源 さん k8 カジノ k8カジノ k8 カジノ k8 カジノ k8 ログイン | Feed | RSS | sitemap.html | Sitemap