SunOS リファレンスマニュアル 1 : ユーザーコマンド
  Suchtext Nur in diesem Buch
Sehen Sie dieses Buch:
Dieses Buch im PDF-Format herunterladen (3874 KB)

Intro(1)

名前 | 機能説明 | 属性 | 関連項目 | 診断 | 警告

名前

    Intro – コマンドおよびアプリケーションプログラムの序章

機能説明

    このセクションでは、このオペレーティングシステムで使用できるコマンドをアルファベット順に説明しています。

    特別な範疇に収まるコマンドについては、以下のように区別しています。

    1B

    SunOS/BSD 互換性パッケージにだけ存在するコマンド。詳細は、『SunOS/BSD Compatibility Package』を参照してください。

    1C

    他のシステムと通信するためのコマンド

    1F

    フォームとメニュー言語インタプリタ (FMLI) に関連するコマンド

    1S

    SunOS システムにだけ存在するコマンド

    その他のセクションについて

      詳細は、SunOS リファレンスマニュアルの各セクションを参照してください。

      • システム管理のコマンドについては、セクション 1M を参照してください。

      • ファイルの形式については、セクション 4 を参照してください。

      • 公式に使用できるファイルやそのほかのさまざまな情報については、セクション 5 を参照してください。

      上記のコマンドや使用方法については、『Solaris ユーザーズガイド (上級編)』を参照してください。

    マニュアルページのコマンドの構文

      特に説明しないかぎり、マニュアルページの「形式」の項で記述されるコマンドは、以下の構文に従って、オプションやその他の引数を受け付けます。そして、以下のように解釈されなければなりません。

      name [-option...] [cmdarg...]各表記の意味は次のとおりです。

      [ ]

      必須でない option (オプション) や cmdarg (引数) を囲みます。

      ...

      option (オプション) や cmdarg (引数) が複数回発生することを意味します。

      name

      実行可能ファイルの名前です。

      { }

      中括弧で囲まれたオプション・引数は相互に依存しており、1 つの組として取り扱う必要があります。

      option

      (常に “-” が先行します。) noargletter... または、argletter optarg[,...]

      noargletter

      引数が必要ないオプション 1 文字を表します。複数の noargletter を指定する場合、 1 つの “-” の後にまとめて指定できます (後述のガイドライン 5)。

      argletter

      引数が必要なオプション 1 文字を表します。

      optarg

      argletter に必要なオプション引数 (文字列) です。複数の optargsargletter に指定する場合、コンマで区切る、または、タブか空白文字で区切って 引用符で囲まなければなりません (後述のガイドライン 8)。

      cmdarg

      “-” で始まらないパス名 (または他のコマンドの引数)。“-” だけを指定すると標準入力を表します。

      特に指定しない限り、オペランドまたはオプション引数が数値である (つまり、数値を含む) 場合、次のように処理されます。

      • 数字は 10 進数の整数として認識されます。

      • 0 から 2147483647 までの数字は、構文上、数値であると認識されます。

      • ユーティリティの機能説明において、負の数をオペランドまたはオプション引数として受け入れると記述されている場合、-2147483647 から 2147483647 までの数字は、構文上、数値であると認識されます。

      • ここに示す範囲よりも大きな範囲は許可されます。

    コマンド構文規格:ガイドライン

      ここで説明するコマンド構文のガイドラインは、既存のコマンドすべてに適用されているわけではありません。しかし、新規のコマンドはすべてこのガイドラインに従う予定です。すべてのシェルプロシージャはパラメタの構文解析に getopts(1) を使って、前後関係に依存するオプションが正しいかどうかチェックしなければなりません。これは、以下に説明するガイドライン 3 から 10 までをサポートします。その他の規則については、コマンド自身がチェックしなければなりません。

      1. コマンド名 (上記の name) は、 2 文字から 9 文字までの長さでなければなりません。

      2. コマンド名は、小文字と数字だけで構成されなければなりません。

      3. オプション名 (上記の option) は、 1 文字でなければなりません。

      4. オプションには “-” が先行しなければなりません。

      5. 引数なしのオプションは、 1 つの “-” の後に複数個まとめて指定できます。

      6. オプションとオプションの最初の引数 (上記の optarg) の間は、タブか空白文字で区切らなければなりません。

      7. オプションの引数は、必ず指定しなければなりません。

      8. オプションに複数のオプションの引数が続く場合、それぞれをコンマで区切る、または、タブか空白文字で区切って 引用符で囲まなければなりません (たとえば、-o xxx,z,yy や -o“xxx z yy” など)。

      9. コマンド行上では、オプションはオペランド (上記の cmdarg) より前に指定しなければなりません。

      10. “- -” を使って、オプションの終わりを示すことができます。

      11. オプションの相対的な順番は問題になりません。

      12. オペランド (上記の cmdarg) の相対的な順番は、その位置によって、コマンドが決めた意味に影響します。

      13. “-” の前後に空白文字を指定した場合 (“-” 'だけを指定した場合) 、標準入力を表します。

      Solaris を初めとする Sun 製品のために、上記ガイドラインを拡張する CLIP (コマンド行インタフェースパラダイム) という拡張セットが開発されました。この拡張セットの目的は、Sun のコマンド行構文を Linux システムで採用されている GNU コマンド行構文に近づけることです。これは、既存のユーティリティを変更するわけではなく、また、この拡張セットをすべての新しいユーティリティに適用するわけでもありません。つまり、必要に応じて、開発中のユーティリティに適用するというだけのことです。

      CLIP は、上記ガイドラインの完全な上位集合であり、IEEE 標準 1003.1-2001 (SUSv3) により近づいています。したがって、すべての GNU 構文を含むわけではありません。GNU 構文には、上記 IEEE 規則と衝突したり、あいまいな構造もあります。このような構造は許されません。

      拡張 CLIP コマンド行構文は、次のようになります。


      utility_name -a --longopt1 -c option_argument \
         -f option_argument --longopt2=option_argument \
         --longopt3 option_argument operand

      この例では、ユーティリティの名前は utility_name です。ユーティリティの名前の後には、オプション、オプション引数、およびオペランドが続きます。これらをまとめて「引数」と呼びます。1 つのハイフンの後に 1 つの文字または数字が続く引数 (たとえば、-a) のことを「短いオプション」と呼びます。2 つのハイフンの後に複数の文字、数字、またはハイフンが続く引数 (たとえば、--longopt1) のことを「長いオプション」と呼びます。短いオプションと長いオプションをまとめて「オプション」と呼びます (古くは「フラグ」とも)。オプションには、オプション引数をとるものもあります (上記例では、-c option_argument)。最後のオプション (および、オプション引数) の後に続く引数のことを「オペランド」と呼びます。ある引数が最初のオペランドであると認識されると、それ以降の引数はすべて、オペラントであると認識されます。

      短いオプションとオプション引数の間には、空白が入っているものと、空白が入っていないものがあります。つまり、短いオプションとオプション引数が隣接していて、本当は 2 つの引数なのだが、1 つの引数になっている場合があります。CLIP の仕様では、短いオプションとそのオプション引数の間には空白が入っていて、別々の引数である必要があります。しかし、昔のアプリケーションをサポートするために、いくつかの例外があります。

      • ユーティリティの「形式」節において、短いオプションとオプション引数の間に空白が入っている場合 (上記例では、-c option_argument)、アプリケーションは、短いオプションとオプション引数に、別々の引数を使用します。

      • 空白が入っていない場合 (上記例では、-foption_argument)、アプリケーションは、短いオプションとオプション引数が直接 (つまり、空白なしに) 隣接していて、1 つの引数であることを期待します。

      • 上記要件にもかかわらず、アプリケーションは、「形式」節で空白が入っている場合も、そうでない場合も、さらには、短いオプションとオプション引数が 1 つの引数となっている場合も、別々の引数になっている場合も、その短いオプションとオプション引数を受け入れる必要があります。

      • 長いオプションにオプション引数が付く場合、長いオプションとオプション引数の間には、必ず、等号記号 (=) を入れる必要があると定義されています。しかし、ユーティリティの「オプション」節において、長いオプションとそのオプション引数の間に等号記号 (=) が入っている場合でも (上記例では、--longopt2= option_argument)、アプリケーションは、長いオプションとそのオプション引数の間に、空白を入れる方法も受け入れる必要があります (上記例では、--longopt1 option_argument)。

      CLIP は上記ガイドラインを拡張して、次のようなガイドラインを定義しています。

      14.

      同じような操作をグループにまとめるには、command subcommand [options] [operands] という形式が適切です。サブコマンド名はコマンド名と同じ規約 (ガイドライン 1 と 2) に従います。

      15.

      長いオプションには「--」を前に付けて、適切な文字セットの英数字とハイフンだけを使用するようにします。長いオプションの名前には、通常、1 つから 3 つまでの単語を使用して、それぞれをハイフンで区切ります。

      16.

      長いオプションにオプション引数を指定するには、--name=argument の形式を使用する必要があります。ただし、--name argument の形式も受け入れます。

      17.

      すべてのユーティリティは、次の 2 つの標準の長いオプションをサポートする必要があります。--version (短いオプションの同義語は -V) と --help (短いオプションの同義語は -?) です。--version の場合、短いオプションの同義語と同じオプションがすでに使用されている場合は、短いオプションの同義語を変更してもかまいません。ただし、短いオプションの同義語は、必ず、用意しておく必要があります。これらのオプションに遭遇した時点で、引数の処理は停止され、適切な出力が表示され、ユーティリティは正常に終了します。

      18.

      短いオプションは 1 つの長いオプションとのみ対応し、同様に、長いオプションは 1 つの短いオプションとのみ対応する必要があります。昔の習慣や、コミュニティで使用する同等のユーティリティとの互換性を保つために、同等なオプションを用意できます。

      19.

      短いオプションの名前は、次の規則に従って、長いオプションの名前から決定される必要があります。

      1. 短いオプションの名前には、長いオプションの名前の最初の 1 文字を選択します。

      2. 最初の 1 文字がほかの短いオプションの名前と衝突する場合は、目立つ子音を選択します。

      3. 最初の 1 文字も目立つ子音もほかの短いオプションの名前と衝突する場合は、目立つ母音を選択します。

      4. 長いオプションの名前のどの文字も使用できない場合は、任意の文字を選択します。

      20.

      長いオプションの名前が 1 文字だけの場合、短いオプションの名前にも同じ文字を使用する必要があります。1 文字だけの長いオプションは避けるべきです。1 文字だけの長いオプションを使用するのは、その文字がオプションの意味を最も端的に表すという、ごくまれな場合だけです。

      21.

      サブコマンドの形式は、通常、拡張 CLIP ガイドラインのガイドライン 1 で説明した形式である必要があります。サブコマンドを省略する場合、コマンドにオペランドを指定してはなりません。この場合、遭遇したときに引数の処理を停止させるオプションだけを指定できます。この形式のコマンドを呼び出すときに、サブコマンドも引数も省略すると、エラーになります。このガイドラインは、コマンドとサブコマンドの構成として、<コマンド> --help、<コマンド>-?、<コマンド> --version、および <コマンド> -V という共通な形式を受け入れるために提供されます。

      これらのガイドラインのいくつかは、ユーティリティの作者にしか関係のないものです。これらのガイドラインをここで紹介したのは、この構文に従ってユーティリティを作成したいユーザーのためです。

属性

    このセクション中にリストされている属性については、attributes(5) のマニュアルページを参照してください。

関連項目

診断

    終了時、すべてのコマンドは状態を表す 2 バイトを返します。 1 つは、システムから提供され、終了の原因を示します。もう 1 つ (正常な終了において) は、プログラムから提供されます (wait(3UCB) および exit(2) を参照)。前のバイトが 0 の場合、正常な終了を表します。後のバイトが 0 の場合、正常な実行を表します。後のバイトがゼロでない場合、間違った引数を指定した、 または不良で受け入れることができないデータを指定したなどの障害を示します。このバイトは、「終了コード」、「終了状態」、「リターンコード」など さまざまな呼ばれ方をします。そして、特別な使い方がある場合に限って説明されます。

警告

    ヌル文字を含むファイルを処理しているときに、予測していなかった結果を出すコマンドがあります。通常このようなコマンドはテキスト入力行を文字列として扱っているので、 行中のヌル文字 (つまり文字列の終端) に出合うと混乱してしまうからです。

SunOS 5.10  最終更新日 2005 年 9 月 28 日

名前 | 機能説明 | 属性 | 関連項目 | 診断 | 警告