5.2.2.1 コマンド行オプションの取得
サーバーは、起動時に最初の処理として、構成ファイルに指定されているサーバー・オプションをEOFまで読み取ります。その場合、サーバーはーUNIX関数getopt
(3)を呼び出します。コマンド行に2つのダッシュ(--
)が出現した時点で、getopt()
関数はEOFを戻します。getopt
関数は、次に処理する引数のargv
索引を外部変数optind
に設定します。その後、定義済のmain()
関数がtpsvrinit()
を呼び出します。
次のリストは、tpsvrinit()
関数を使用してコマンド行オプションを取得する方法を示しています。
tpsvrinit( )を使用したコマンド行オプションの取得のリスト
tpsvrinit(argc, argv)
int argc;
char **argv;
{
int c;
extern char *optarg;
extern int optind;
.
.
.
while((c = getopt(argc, argv, "f:x:")) != EOF)
switch(c){
.
.
.
}
.
.
.
}
main()
がtpsvrinit()
を呼び出すとき、コマンド行の2つのダッシュ(--
)の後の引数を受け取ります。上の例では、オプションf
とx
それぞれがコロンで示される引数を取ります。optarg
が、オプションの引数の開始位置を示します。switch文のロジックは省略されています。