4 コマンドライン引数の構文 ¶
POSIX は、コマンドライン引数について次の規約を推奨しています。
- ハイフン(「-」)で始まるコマンドライン引数はオプションです。
- オプション名は英数字1文字です。
- 引数を必要とするオプションもあります。
- オプションとその引数は、別々のトークンにしても、しなくてもかまいません。(つまり、間の空白は任意です。)したがって、-o foo と -ofoo は等価です。
- 1つのトークンのハイフンの後に、引数を取らないオプションを1つ以上並べ、その後に引数を取るオプションを多くても1つ続けられます。したがって、-abc は -a -b -c と等価です。
- 通常、オプションは、オプション以外の引数より前に置きます。
- 引数「--」は、すべてのオプションを終了します。その後の引数は、ハイフンで始まっていてもオプション以外の引数として扱われます。
- ハイフン1文字だけからなるトークンは、通常の、オプション以外の引数として解釈されます。慣例では、標準入力、標準出力、または「-」という名前のファイルを指定するために使います。
GNU は、これらの規約に長いオプションを追加しています。
- 長いオプションは、2つのハイフン(「--」)と、その後に続く英数字とハイフンからなる名前で構成されます。オプション名は通常1〜3語で、語をハイフンで区切ります。長いオプション名は、一意になる限り省略形を使えます。
- 長いオプションとその引数は、別々のトークンにしても、しなくてもかまいません。別々にしない場合は、等号「=」で区切る必要があります。したがって、--foo bar と --foo=bar は等価です。