Provided by: manpages-ja_0.5.0.0.20110915-1_all bug

READLINE ライブラリ
       readline   は対話シェルを使うときに入力の読み込みを処理するライブラリで
       す。 ただし、シェルの起動時に --noediting  オプションが指定された場合に
       は使われません。  デフォルトでは、行編集に使うコマンドは emacs のコマン
       ドに似ています。 vi 形式の行編集インタフェースも使えます。 シェルを起動
       した後に行編集機能を無効にするには、組み込みコマンド set (後述の シェル
       の組み込みコマンド を参照) に対して +o emacs オプションまたは +o vi  オ
       プションを設定してください。

   Readline セクションにおける記法
       このセクションでは、emacs  形式の記法を使ってキーストロークを表します。
       コントロールキーは C-key で表します  (例:  C-n  は  Control-N  の意味で
       す)。同様に   キーは M-key で表すので、M-x は Meta-X を表すことにな
       ります。 ( キーが無いキーボードでは、M-x は ESC x  を表します。つま
       り、  エスケープキーを押した後に x キーを押します。これは ESC を 
         (meta   prefix)   にする操作です。   M-C-x   の組み合わせ
       は、ESC-Control-x  あるいはエスケープキーを押した後に、コントロールキー
       を押したまま x を押すことを示します。)

       Readline のコマンドには数値の  を指定できます。通常これは繰り返し
       の回数として作用します。 ただし場合によっては、引き数の符号が意味を持つ
       こともあります。 前方に作用するコマンド (例: kill-line)  に負の引き数を
       渡すと、  コマンドは後方に作用します。 引き数に対する動作がこの説明と異
       なるコマンドについては後で説明します。

       コマンドがテキストを (kill) すると説明されている時は、 削除されたテ
       キストは、  後で取り出せる  ( (yank) できる) ように保存されます。
       キルされたテキストは、 (kill ring) に保存されます。  連続して
       キルを行うと、テキストは  1 つのまとまりとして保存されるので、 全部を一
       度にヤンクできます。テキストをキルしないコマンドが挟まると、 キルリング
       上のテキストが分離されます。

   Readline の初期化
       コマンドを初期化ファイル  (inputrc ファイル) に追加すると、 readline を
       カスタマイズできます。このファイルの名前は、変数 INPUTRC の値から決まり
       ます。この変数が設定されていない場合のデフォルト値は  ~/.inputrc です。
       readline ライブラリを使うプログラムが起動する際には、  この初期化ファイ
       ルが読み込まれ、キー割り当てと変数が設定されます。   readline  の初期化
       ファイル中で使用できる基本的構文は、   以下のように少ししかありません。
       空行は無視されます。  # で始まる行はコメントです。 $ で始まる行は条件文
       です。 それ以外の行はキー割り当てと変数の設定です。

       デフォルトのキー割り当ては inputrc ファイルで変更できます。このライブラ
       リを使う他のプログラムからも、 独自のコマンドとキー割り当てを追加できま
       す。

       例えば、

              M-Control-u: universal-argument
       や
              C-Meta-u: universal-argument
       を inputrc ファイルに書くと、M-C-u で readline の universal-argument コ
       マンドが実行されるようになります。

       認識されるシンボリックな文字名を以下に示します:  RUBOUT, DEL, ESC, LFD,
       NEWLINE, RET, RETURN, SPC, SPACE, TAB。

       readline   では、コマンド名だけでなくキーにも文字列を割り当てできます。
       つまり、そのキーが押されると文字列が挿入されます (, macro)。

   Readline のキー割り当て
       inputrc   ファイルにおける制御キーの割り当て方は単純です。   必要なもの
       は、コマンドの名前あるいはマクロのテキストと、   これらが割り当てられる
       キーシーケンスだけです。 名前は 2 通りの方法で指定できます。 つまり、シ
       ンボリックなキーの名前 (たぶん、これに Meta-Control- プレフィックス
       が付いたもの) による指定と、 キーシーケンスによる指定です。

       「keyname:function-name」あるいは   「keyname:macro」の形式を使うときに
       は、  keyname  は英語で書き下したキーの名前となります。例を以下に示しま
       す:

              Control-u: universal-argument
              Meta-Rubout: backward-kill-word
              Control-o: "> output"

       この例では、 C-uuniversal-argument に、 M-DELbackward-kill-word
       に割り当てられます。 また、 C-o  はマクロの実行に割り当てられ、右辺値に
       展開されます (つまり、テキスト ``> output'' が編集行に挿入されます)。

       後者の形式である「"keyseq":function-name」または 「"keyseq":macro」にお
       いては、 keyseq は先程の  keyname  とは異なり、  ダブルクォートで括って
       キーシーケンス全体を示す文字列を表記しています。     以下の例で示すよう
       に、GNU Emacs 形式のキーエスケープの一部を使えます。 ただしシンボリック
       な文字名は認識されません。

              "\C-u": universal-argument
              "\C-x\C-r": re-read-init-file
              "\e[11~": "Function Key 1"

       この例でも、 C-uuniversal-argument 機能に割り当てられています。 C-x
       C-rre-read-init-file 機能に割り当てられ、 ESC [ 1 1 ~Function
       Key 1 ``Function Key 1''.  という文字列の挿入に割り当てられています。

       GNU Emacs 形式のエスケープシーケンスを以下に全て示します:
              \C-    コントロールプレフィックス
              \M-    メタプレフィックス
              \e     エスケープ文字
              \\     バックスラッシュ
              \"     " という文字
              \'     ´ という文字

       GNU Emacs 形式のエスケープシーケンスに加えて、 別形式のバックスラッシュ
       エスケープも使えます:
              \a     警告 (ベル)
              \b     バックスペース
              \d     削除 (delete)
              \f     フォームフィード
              \n     改行
              \r     復帰
              \t     水平タブ
              \v     垂直タブ
              \nnn   ASCII コードの 8 進値が nnn である文字  (1 文字につき数字
                     3 桁)
              \xnnn  ASCII コードの 16 進値が nnn である文字 (1 文字につき数字
                     3 桁)

       マクロのテキストを入力する際には、マクロ定義を示すために シングルクォー
       トやダブルクォートを使わなければなりません。 クォートされていないテキス
       トは関数名と見なされます。 マクロ本体では、前述のバックスラッシュによる
       エスケープは展開されます。 バックスラッシュはマクロのテキスト内の他の文
       字を全てエスケープします。 これには " や ' も含まれます。

       bash では、組み込みコマンドの bind を使って、readline の現在の キー割り
       当ての表示と変更を行えます。  また組み込みコマンド set に対して -o オプ
       ションを使えば、編集モードを対話的利用の途中に切替え可能です    (後述の
       シェルの組み込みコマンド を参照)。

   Readline の変数
       Readline     の動作をカスタマイズできる変数は他にもあります。    変数は
       inputrc ファイル中に

              set variable-name value

       という形式の文で設定できます。 特に断らない限り、readline  の変数は  On
       または Off のいずれかです。 変数とそのデフォルト値を以下に示します:

       bell-style (audible)
              readline    が端末のベルを鳴らそうとしたときの動作を制御します。
              none   が設定されている場合は、readline   はベルを鳴らしません。
              visible  が設定されている場合には、可能であれば可視ベル (visible
              bell)     が用いられます。audible     が設定されている場合には、
              readline は端末のベルを鳴らそうとします。
       comment-begin (``#'')
              readline  の insert-comment コマンドが実行されたときに挿入される
              文字列です。 このコマンドは emacs  モードでは  M-#  に割り当てら
              れ、vi コマンドモードでは # に割り当てられます。
       completion-ignore-case (Off)
              On  が設定されていると、 readline がファイル名のマッチングと補完
              を行う際に 大文字と小文字が区別されません。
       completion-query-items (100)
              possible-completions コマンドが生成した補完候補の数が、 いくつを
              越えると表示の可否をユーザに問い合わせるのかを決めます。  この変
              数には 0 以上の任意の整数を設定できます。 補完の候補数がこの変数
              の値以上の場合には、  ユーザに対して候補を表示するかどうかの問い
              合わせがなされます。  そうでない場合には、単に端末に補完の候補が
              リスト表示されます。
       convert-meta (On)
              On  を設定すると、readline は 8 番目のビットがセットされている文
              字を ASCII のキーシーケンスに変換します。 変換は、8 番目のビット
              を落として、    エスケープ文字を前に追加することによって行います
              (実際にはエスケープ文字をとして用います)。
       disable-completion (Off)
              On を設定すると、readline は単語の補完を行わなくなります。  補完
              される文字の編集行への挿入は、 その文字を self-insert に割り当て
              たかのように行われます。
       editing-mode (emacs)
              readline の起動時に emacsvi のどちらに似たキー割り当てを使う
              のかを制御します。  editing-mode には emacsvi のいずれかを指
              定できます。
       enable-keypad (Off)
              On  を設定すると、  readline  は呼び出された時にアプリケーション
              キーパッドを有効にしようとします。  一部のシステムでは、矢印キー
              を使うためにこれを有効にする必要があります。
       expand-tilde (Off)
              on を設定すると、 readline  が単語の補完を試みるときにチルダ展開
              が行われます。
       horizontal-scroll-mode (Off)
              on  が設定されている時、readline は表示の際に行を 1 つしか使わな
              いようになります。つまり行がスクリーンの幅より長くなると、  新し
              い行に折り返すのではなく、1   つの入力行の中で横にスクロールしま
              す。
       input-meta (Off)
              On が設定されていると、readline は 8  ビットの入力が可能になりま
              す(つまり、読み込んだ文字の再上位ビットを落としません)。この動作
              は、端 末のサポートとは無関係に行われます。 meta-flag という名前
              は、この変数の別名です。
       isearch-terminators (``C-[C-J'')
              インクリメンタル検索を終了させる文字からなる文字列です (終了後に
              その文字がコマンドとして実行されることもありません)。 この変数に
              値が設定されていなければ、 ESCC-J でインクリメンタル検索が終
              わります。
       keymap (emacs)
              現在の readline のキーマップを設定します。  正しいキーマップ名を
              全て挙げると、  emacs,  emacs-standard,  emacs-meta, emacs-ctlx,
              vi, vi-command, vi-insert となります。vivi-command  と等価
              で、emacsemacs-standard と等価です。 デフォルト値は emacs で
              す。 editing-mode の値もデフォルトキーマップに影響を与えます。
       mark-directories (On)
              On  が設定されていると、  補完されたディレクトリ名の末尾にスラッ
              シュが追加されます。
       mark-modified-lines (Off)
              On が設定されていると、履歴行を表示する際に、 以前に変更されたも
              のの先頭にアスタリスク (*) を付けて表示します。
       output-meta (Off)
              On が設定されていると、 readline は 8 番目のビットが立っている文
              字を直接表示します。  メタ文字を前置したエスケープシーケンスでの
              表示は行いません。
       print-completions-horizontally (Off)
              On  が設定されていると、  readline  は補完でマッチするものをアル
              ファベット順にして、 縦方向ではなく横方向に並べて表示します。
       show-all-if-ambiguous (Off)
              これは補完機能のデフォルトの挙動を変えます。 On が設定されている
              場合、単語に対する補完候補が複数個あると、  マッチするものが即座
              にリスト表示されます。ベルは鳴らされません。
       visible-stats (Off)
              On が設定されていると、 stat(2) で得られるファイルの種類を表す文
              字が、 補完候補のリスト表示の際に追加されます。

   Readline の条件構文
       Readline には、 C 言語のプリプロセッサの条件付きコンパイル機能と 似たコ
       ンセプトに基づく機能が実装されています。 これを使うとキー割り当てや変数
       の設定を評価の結果として実行できます。 パーザディレクティブは 4  つあり
       ます。

       $if    $if 構文を使うと、編集モードや使っている端末、 readline を使って
              いるアプリケーションに基づいた割り当てを行えます。  評価文のテキ
              ストは行の最後までです。    これを分離するには文字は必要ありませ
              ん。

              mode   $if ディレクティブの mode=  形式は、  readline  が  emacs
                     モードか  vi モードのどちらになっているかを調べるために使
                     います。 例えばこれを set  keymap  コマンドと一緒に使い、
                     readline が emacs モードで始まった時だけ キーの割り当てを
                     emacs-standardemacs-ctlx キーマップに設定できます。

              term   term= 形式を使うと、 端末固有のキー割り当てを入れることが
                     できます。  これは端末のファンクションキーが出力する キー
                     シーケンスを割り当てる場合などに使えます。 = の右辺の単語
                     は、  端末の完全な名前および最初の - の前までの部分的な名
                     前の両方に対して評価されます。 これにより例えば、 sunsunsun-cmd の両方にマッチできます。

              application
                     application  はアプリケーション固有の設定を入れるために使
                     います。 readline  ライブラリを使っているプログラムはそれ
                     ぞれ    (application name) を設定するの
                     で、   初期化ファイルはそれが特定の値かどうかを調べられま
                     す。   これを使って、キーシーケンスを特定のプログラム用の
                     便利な機能に割り当てできます。例えば以下のコマンドは、
                     bash  内で現在または 1 つ前の単語をクォートするキーシーケ
                     ンスを追加します:

                     $if Bash
                     # Quote the current or previous word
                     "\C-xq": "\eb\"\ef\""
                     $endif

       $endif このコマンドは上の例で見たように、$if コマンドを終了させます。

       $else  $if ディレクティブのこの分岐内におけるコマンドは、  評価が失敗し
              た時に実行されます。

       $include
              このディレクティブはファイル名 1 つを引き数に取り、 そのファイル
              からコマンドとキー割り当てを読み込みます。  例えば以下のディレク
              ティブを使うと /etc/inputrc が読み込まれます:

              $include  /etc/inputrc

   検索
       readline   には、指定した文字列を含む行をコマンド履歴内から探すコマンド
       が用意されています (後述の 履歴 を参照)。検索のモードには、  
        (incremental) モードと  (non-incremental) モー
       ドの 2 つがあります。

       インクリメンタル検索は、 ユーザが検索文字列の入力を終えるより前に検索を
       開始します。 検索文字列に文字が追加されるたびに、 readline は現在まで入
       力した文字列にマッチする履歴から 次のエントリを表示します。インクリメン
       タル検索で必要なのは、 探している履歴エントリを見つけるために必要な数の
       文字だけです。     インクリメンタル検索を終了させるには、      isearch-
       terminators の値に入っている文字を使います。 この変数に値が代入されてい
       ない場合には、エスケープ文字または Control-J でインクリメンタル検索が終
       了します。 Control-G はインクリメンタル検索を異常終了させ、元の行を復元
       します。 検索が終了すると、検索文字列を含む履歴エントリが現在の行になり
       ます。

       マッチした他の履歴リストのエントリを見つけるには、Control-S      または
       Control-R を適宜入力します。これにより、 今まで入力した検索文字列にマッ
       チする次のエントリを  履歴の前方または後方に向かって探します。 readline
       に割り当てられた他のキーシーケンスを入力すると検索が終わり、 そのコマン
       ドが実行されます。例えば、は検索を終了させて、     その行を入力しま
       す。これにより、履歴リスト中のコマンドが実行されます。

       インクリメンタルでない検索の場合には、 履歴行にマッチするものの検索を始
       める前に検索する文字列全体を読み込みます。 検索文字列には、ユーザが入力
       したものか、現在の行の内容の一部を使えます。

   Readline のコマンド名
       以下に示すのは、 コマンドの名前およびそれらが割り当てられている  デフォ
       ルトのキーシーケンスの一覧です。 対応するキーシーケンスが無いコマンド名
       には、 デフォルトではキーは割り当てられていません。  以下の説明では、
        (point) は現在のカーソルの位置を表し、  (mark)set-mark
       コマンドによって保存されたカーソル位置を表します。 ポイントとマークの間
       のテキストは、 (region) で表します。

   移動コマンド
       beginning-of-line (C-a)
              現在の行の先頭に移動します。
       end-of-line (C-e)
              行の末尾に移動します。
       forward-char (C-f)
              1 文字進みます。
       backward-char (C-b)
              1 文字戻ります。
       forward-word (M-f)
              次の単語の最後に進みます。単語は英数字  (文字と数字)  からなりま
              す。
       backward-word (M-b)
              現在の単語あるいは前の単語の先頭に戻ります。 単語は英数字  (文字
              と数字) からなります。
       clear-screen (C-l)
              現在の行を画面の一番上の行に残したまま、画面をクリアします。  引
              き数を付けると、画面をクリアせずに現在の行を再描画します。
       redraw-current-line
              現在の行を再描画します。

   履歴操作のためのコマンド
       accept-line (Newline, Return)
              カーソルの位置に関わらず、行を入力します。この行が空でなけれ
              ば、変数  HISTCONTROL の状態に従って、これが履歴リストに追加され
              ます。  行が履歴リストを変更したものならば、履歴行は元の状態に戻
              されます。
       previous-history (C-p)
              履歴リストを戻り、履歴リストから前の行を取り出します。
       next-history (C-n)
              履歴リストを進み、履歴リストから次の行を取り出します。
       beginning-of-history (M-<)
              履歴の最初の行に移動します。
       end-of-history (M->)
              入力履歴の最後に移動します。つまり、現在入力中の行に移動します。
       reverse-search-history (C-r)
              現在の行を開始点にして後方に向かって検索を行い、  必要に応じて履
              歴を「遡って」いきます。これはインクリメンタル検索です。
       forward-search-history (C-s)
              現在の行を開始点にして前方に向かって検索を行い、  必要に応じて履
              歴を「下って」いきます。これはインクリメンタル検索です。
       non-incremental-reverse-search-history (M-p)
              現在の行を開始点にして、履歴リストを後方に向かって検索を行いま
              す。 この際には、ユーザが入力した文字列を 非インクリメンタルモー
              ドで検索します。
       non-incremental-forward-search-history (M-n)
              現在の行を開始点にして、履歴リストを前方に向かって検索を行いま
              す。 この際には、ユーザが入力した文字列を 非インクリメンタルモー
              ドで検索します。
       history-search-forward
              履歴を前方に向かって検索し、  現在の行の先頭とポイントの間の文字
              列を探します。 これは非インクリメンタル検索です。
       history-search-backward
              履歴を後方に向かって検索し、  現在の行の先頭およびポイントの間の
              文字列を探します。 これは非インクリメンタル検索です。
       yank-nth-arg (M-C-y)
              前のコマンドに対する最初の引き数  (通常は前の行の  2 番目の単語)
              をポイントに挿入します。引き数 n  が付いていると、前のコマンドの
              n  番目の単語 (前のコマンドの単語は 0 から数えます)。 引き数が負
              ならば、前のコマンドの最後から n 番目の単語が挿入されます。
       yank-last-arg (M-., M-_)
              前のコマンドの最後の引き数 (一つ前の履歴エントリの最後の単語) を
              挿入します。 引き数があると、yank-nth-arg と全く同じように動作し
              ます。 yank-last-arg を繰り返して呼び出すと、 履歴リストを遡って
              参照が行われ、 それぞれの行の最後の引き数が順番に挿入されます。
       shell-expand-line (M-C-e)
              シェルのように行を展開します。  エイリアスや履歴の展開など、シェ
              ルの行う単語展開を行います。  履歴の展開の説明については、後述の
              履歴の展開 を参照してください。
       history-expand-line (M-^)
              現在の行で履歴の展開を行います。  履歴の展開の説明については、後
              述の 履歴の展開 を参照してください。
       magic-space
              現在の行で履歴の展開を行い、空白を挿入します。  履歴の展開の説明
              については、後述の 履歴の展開 を参照してください。
       alias-expand-line
              現在の行でエイリアスの展開を行います。  エイリアスの展開の説明に
              ついては、前述の エイリアス を参照してください。
       history-and-alias-expand-line
              現在の行で履歴とエイリアスの展開を行います。
       insert-last-argument (M-., M-_)
              yank-last-arg と同じものです。
       operate-and-get-next (C-o)
              現在の行を実行し、  現在の行の次の行を編集するために履歴から取得
              します。 引き数は全て無視されます。

   テキスト編集のためのコマンド
       delete-char (C-d)
              ポイントの文字を削除します。  ポイントが行の先頭であり、その行に
              文字が無く、 さらに打ち込んだ最後の文字が delete-char に割り当て
              られていなければ、 EOF が返されます。
       backward-delete-char (Rubout)
              カーソルの前の文字を削除します。数値の引き数を与えると、  削除し
              たテキストをキルリングに保存します。
       forward-backward-delete-char
              カーソルが行末になければカーソルがある位置の文字を削除します。
              カーソルが行末にある場合には、カーソルの前の文字を削除します。
              デフォルトでは、これはキーに割り当てられていません。
       quoted-insert (C-q, C-v)
              次に打ち込んだ文字をそのまま行に追加します。 これは C-q 等の文字
              を挿入するために使います。
       tab-insert (C-v TAB)
              タブ文字を挿入します。
       self-insert (a, b, A, 1, !, ...)
              打ち込んだ文字を挿入します。
       transpose-chars (C-t)
              ポイントの前にある文字を動かし、  現在ポイントがある文字の後ろに
              持っていきます。  同時にポイントも前に進みます。ポイントが行の最
              後にある場合は、  ポイントの前の 2 文字が交換されます。 負の引き
              数を指定すると、何も起こりません。
       transpose-words (M-t)
              ポイントの前にある単語を動かし、  ポイントの後ろにある単語の後ろ
              に持っていきます。  この際には、ポイントも始めに前にあった単語の
              後ろまで移動します。
       upcase-word (M-u)
              現在の (または後ろの) 単語を大文字にします。  負の引き数を指定す
              ると、前の単語を大文字にしますが、 ポイントは動きません。
       downcase-word (M-l)
              現在の  (または後ろの) 単語を小文字にします。 負の引き数を指定す
              ると、前の単語を小文字にしますが、 ポイントは動きません。
       capitalize-word (M-c)
              現在の (または後ろの) 単語をキャピタライズします (単語の先頭の文
              字を大文字にします)。 負の引き数を指定すると前の単語をキャピタラ
              イズしますが、 ポイントは動きません。

   キルとヤンク
       kill-line (C-k)
              ポイントから行末までのテキストをキルします。
       backward-kill-line (C-x Rubout)
              現在のカーソル位置から行頭までをキルします。
       unix-line-discard (C-u)
              ポイントから行頭までをキルします。  キルされたテキストはキルリン
              グ (kill-ring) に入ります。
       kill-whole-line
              現在の行の文字を全てキルします。ポイントの位置は関係ありません。
       kill-word (M-d)
              ポイントから現在の単語の終わりまでをキルします。  ポイントが単語
              と単語の間であれば、後ろの単語の終わりまでをキルします。  単語の
              境界は forward-word で使われているものと同じです。
       backward-kill-word (M-Rubout)
              ポイントの下にある単語をキルします。  単語の境界は backward-word
              で使われているものと同じです。
       unix-word-rubout (C-w)
              ポイントの下にある単語をキルします。  その際には空白を単語の境界
              として用います。 キルされたテキストはキルリングに入ります。
       delete-horizontal-space (M-\)
              ポイントの周りの空白とタブを全て削除します。
       kill-region
              現在のリージョン中のテキストをキルします。
       copy-region-as-kill
              リージョン中のテキストをキルバッファにコピーします。
       copy-backward-word
              ポイントの前の単語をキルバッファにコピーします。単語の境界は
              backward-word と同じです。
       copy-forward-word
              ポイントの後ろの単語をキルバッファにコピーします。単語の境界は
              forward-word と同じです。
       yank (C-y)
              キルリングの先頭のテキストをポイントのあるバッファにヤンクしま
              す。
       yank-pop (M-y)
              キルリングをローテートし、新たに先頭になったテキストをヤンクしま
              す。 yank または yank-pop の後にしか使えません。

   数値の引き数
       digit-argument (M-0, M-1, ..., M--)
              既に蓄積中の引き数にこの数字を追加するか、  またはこの数字によっ
              て新しい引き数を始めます。 M-- を使うと、負の値を指定できます。
       universal-argument
              引き数を指定する別法です。 このコマンドの後に 1 つ以上の数字があ
              る場合 (頭にマイナス記号を付けることもできます)、 これらの数字で
              引き数が定義されます。          コマンドの後に数字を続けた場合、
              universal-argument  を再び実行すると数値の引き数を終了しますが、
              そうでない場合は無視されます。 特殊なケースとして、 このコマンド
              の直後に数字でもマイナス記号でもない文字がある場合には、  次のコ
              マンドの引き数カウントは 4 倍にされます。 最初は引き数カウントは
              1  なので、  この機能を一度実行すると引き数カウントは 4 になり、
              次に実行すると引き数カウントは 16 になります。  それ以降も同様で
              す。

   補完
       complete (TAB)
              ポイントの前のテキストについて補完を試みます。 bash が補完を行う
              際にはテキストの扱いの種類を順に試しますが、    その順序は、変数
              (テキストが  $ で始まる場合)、 ユーザ名 (テキストが ~ で始まる場
              合)、 ホスト名 (テキストが @ で始まる場合)、 コマンド  (エイリア
              スや関数も含みます)  です。 これらのうちいずれにもマッチしない場
              合には、 ファイル名補完を試みます。
       possible-completions (M-?)
              ポイントの前のテキストを補完して得られるものの候補を列挙します。
       insert-completions (M-*)
              ポイントの前のテキストを補完して得られるものを全て挿入します。
              挿入されるものは、possible-completions  で列挙されるものと同じで
              す。
       menu-complete
              complete コマンドに似ていますが、 補完される単語を補完候補リスト
              のうちの  1  つと置換します。 menu-complete を繰り返して実行する
              と、 補完の候補リストが次々と順番に挿入されます。 補完リストの最
              後まで来るとベルが  (bell-style の設定に基づいて) 鳴らされ、元の
              テキストに戻ります。 引き数 n  を指定すると、リスト中の位置が  n
              個進みます。    負の引き数を指定すると、リスト中を逆向きに戻れま
              す。 このコマンドは TAB に割り当てることを意図して用意されたもの
              ですが、 デフォルトでは割り当ては行われていません。
       delete-char-or-list
              カーソルが行頭や行末に無ければ、カーソルの下の文字を削除します
              (delete-char           と同様です)。カーソルが行末にある場合は、
              possible-completions と同じ動作をします。 このコマンドはデフォル
              トではキーに割り当てられていません。
       complete-filename (M-/)
              ポイントの前のテキストについて、ファイル名の補完を試みます。
       possible-filename-completions (C-x /)
              ポイントの前のテキストについて、補完の候補を列挙します。  テキス
              トはファイル名として扱います。
       complete-username (M-~)
              ポイントの前のテキストについて補完を試みます。  テキストはユーザ
              名として扱います。
       possible-username-completions (C-x ~)
              ポイントの前のテキストについて補完の候補を列挙します。  テキスト
              はユーザ名として扱います。
       complete-variable (M-$)
              ポイントの前のテキストについて補完を試みます。  テキストはシェル
              変数として扱います。
       possible-variable-completions (C-x $)
              ポイントの前のテキストについて補完の候補を列挙します。  テキスト
              はシェル変数として扱います。
       complete-hostname (M-@)
              ポイントの前のテキストについて補完を試みます。  テキストはホスト
              名として扱います。
       possible-hostname-completions (C-x @)
              ポイントの前のテキストについて補完の候補を列挙します。  テキスト
              はホスト名として扱います。
       complete-command (M-!)
              ポイントの前のテキストについて補完を試みます。  テキストはコマン
              ド名として扱います。    コマンド補完の際にマッチングを試みる順序
              は、  エイリアス、予約語、シェル関数、シェルの組み込みコマンド、
              実行ファイルです。
       possible-command-completions (C-x !)
              ポイントの前のテキストについて補完の候補を列挙します。  テキスト
              はコマンド名として扱います。
       dynamic-complete-history (M-TAB)
              ポイントの前のテキストについて補完を試みます。  テキストの比較が
              行われるのは、 履歴リスト中の行のうち補完の候補となるものです。
       complete-into-braces (M-{)
              ファイル名補完を実行し、補完の候補リストを挿入します。  シェルか
              ら利用可能なリストとなるように、  返される候補はブレースで括られ
              ます (前述の ブレース展開 を参照)。

   キーボードマクロ
       start-kbd-macro (C-x ()
              現在のキーボードマクロに対して入力される文字列の保存を開始しま
              す。
       end-kbd-macro (C-x ))
              現在のキーボードマクロに対して入力された文字列の保存を終了し、
              この定義を格納します。
       call-last-kbd-macro (C-x e)
              最後に定義されたキーボードマクロを再実行します。 再実行は、 マク
              ロ中の文字列をキーボードでの入力と同様に出力することによって行い
              ます。

   その他
       re-read-init-file (C-x C-r)
              inputrc ファイルの内容を読み込み、  このファイル中の割り当てや変
              数設定を取り込みます。
       abort (C-g)
              現在の編集行を捨て、端末のベルを鳴らします           (この動作は
              bell-style の設定に従って行います)。
       do-uppercase-version (M-a, M-b, M-x, ...)
              メタ文字と共に入力された文字 x が小文字であれば、 これに対応する
              大文字に割り当てられているコマンドを実行します。
       prefix-meta (ESC)
              次に入力される文字を、    メタプレフィックスされたことにします。
              ESC fMeta-f と同じ意味です。
       undo (C-_, C-x C-u)
              インクリメンタルアンドゥを行います。  これは行ごとに別々に記憶さ
              れています。
       revert-line (M-r)
              この行に対して行った変更を全て取り消します。  このコマンドは、行
              が初期状態に戻るまで undo コマンドを実行するようなものです。
       tilde-expand (M-&)
              現在の単語についてチルダ展開を実行します。
       set-mark (C-@, M-<space>)
              ポイントにマークを設定します。    数字の引き数が与えられた場合に
              は、 マークにはその位置が設定されます。
       exchange-point-and-mark (C-x C-x)
              ポイントをマークと入れ換えます。  現在のカーソル位置は保存されて
              いる位置となり、 古いカーソル位置がマークとして保存されます。
       character-search (C-])
              文字を 1 つ読み込み、 その文字が次に現われる場所にポイントを移動
              させます。  負のカウントを与えると、その文字が前に現われた場所を
              探します。
       character-search-backward (M-C-])
              文字を 1 つ読み込み、 その文字が前に現われた場所にポイントを移動
              させます。  負のカウントを与えると、その文字が次に現われる場所を
              探します。
       insert-comment (M-#)
              まず readline の comment-begin  変数の値が現在の行の先頭に挿入さ
              れ、  次に改行が打ち込まれたのと同じように行の入力が行われます。
              comment-begin のデフォルト値によって、  このコマンドは現在の行を
              シェルのコメントとします。
       glob-expand-word (C-x *)
              ポイントの前の単語がパス名展開のパターンとして扱われ、  この単語
              と置き換えられる形でマッチするファイル名のリストが挿入されます。
       glob-list-expansions (C-x g)
              glob-expand-word    で生成されるのと同じ展開結果のリストが表示さ
              れ、 行が再描画されます。
       dump-functions
              機能とそのキー割り当てを全て、 readline の出力ストリームに出力し
              ます。 数値の引き数を与えると、 出力は inputrc  に書き込める形に
              整形されます。
       dump-variables
              設定可能な readline の変数とその値を全て readline の出力ストリー
              ムに出力します。 数値の引き数を与えると、 出力は inputrc  に書き
              込める形に整形されます。
       dump-macros
              マクロとマクロが出力する文字列に割り当てられた  readline  のキー
              シーケンスを全て出力します。   数値の引き数を与えると、   出力は
              inputrc に書き込める形に整形されます。
       display-shell-version (C-x C-v)
              現在実行している bash のバージョン情報を表示します。

   プログラム補完
       complete  組み込みコマンドで 補完仕様 (compspec) が定義されているコマン
       ドに対して 引き数の単語補完が試みられると、  プログラム可能な補完の機能
       が呼び出されます  (complete 組み込みコマンドについては、後述する シェル
       の組み込みコマンド を参照)。

       まず、コマンド名が特定されます。 そのコマンドに対して補完仕様が定義され
       ていれば、  それがその単語の補完候補のリスト作成に使われます。 コマンド
       の単語がフルパス名であれば、 最初にフルパス名の補完仕様が検索されます。
       フルパス名の補完仕様が見つからなかった場合は、 最後のスラッシュ以降の部
       分に対して該当する補完仕様を見つけようとします。

       補完仕様が見つかると、 それはマッチする単語のリストを作成するために使用
       されます。  補完仕様が見つからなかった場合は、 前述の 補完 で説明したよ
       うなデフォルトの bash の補完が行われます。

       まず、補完仕様で指定された動作が用いられます。 補完される単語の前置部分
       にマッチするものだけが返されます。   ファイル名やディレクトリ名の補完に
       -f-d  オプションが使用された場合は、シェル変数  FIGNORE  がマッチの
       フィルタとして使用されます。

       続いて -G オプションによって指定された ファイル名展開パターンの補完が生
       成されます。 パターンによって生成された単語は、  補完される単語とマッチ
       する必要はありません。  GLOBIGNORE シェル変数はマッチのフィルタとしては
       使われませんが、 FIGNORE 変数は使用されます。

       次に、 -W  オプションで指定された引き数の文字列が考慮されます。  文字列
       は、最初に  IFS 特殊変数の文字を区切り文字として分割されます。 シェルの
       クォート処理は考慮されます。 それぞれの単語は、前述の 展開 で示したよう
       に、ブレース展開、チルダ展開、パラメータと変数の展開、 コマンド置換、算
       術式展開、パス名展開が行われます。 結果は、前述の単語の分割で示した規則
       によって分割されます。 展開の結果は補完される単語の前置部分とマッチが行
       われ、 マッチした単語が補完候補となります。

       これらのマッチが生成された後、 シェル関数や -F-C オプションで指定さ
       れたコマンドが呼び出されます。     コマンドや関数が呼び出されるときは、
       COMP_LINECOMP_POINT  変数に後述のシェル変数で示すように値が設定され
       ます。 シェル関数が呼び出される場合は、 COMP_WORDSCOMP_CWORD 変数も
       設定されます。 関数やコマンドが呼び出されるときは、  最初の引き数は引き
       数が補完されるコマンドの名前、  二番目の引き数は補完される単語、 三番目
       の引き数は現在のコマンドラインで補完中の単語の 前に置かれる単語となりま
       す。 補完される単語に対して生成された補完の候補はフィルタリングされませ
       ん。 関数やコマンドは生成されたマッチとは無関係に補完されます。

       -F で指定された関数がまず呼び出されます。 関数は、後述する compgen 組み
       込みコマンドを含めた、   全てのシェルの機能を使ってマッチを生成します。
       補完候補は必ず COMPREPLY 配列変数に格納されます。

       続いて -C オプションで指定されたコマンドが呼び出され、 環境変数をコマン
       ド置換します。  このコマンドは、補完候補を 1 行にひとつずつ標準出力に出
       力します。 必要があれば、バックスラッシュが改行をエスケープするために使
       用されます。

       全ての補完候補が生成された後で、  -X オプションで指定されたフィルタが補
       完候補に作用します。 フィルタは、パス名展開で使用されたようなパターンで
       す。パターン中の & は補完される単語に置換されます。 文字通りの & はバッ
       クスラッシュでエスケープします。 バックスラッシュはマッチを試みる前に削
       除されます。  パターンにマッチした補完は候補から削除されます。 先行する
       ! はパターンを否定します。 この場合、パターンにマッチしなかった補完が削
       除されます。

       最後に、-P-S オプションで指定された 前置部分と後置部分が補完候補の
       それぞれに加えられます。 そして結果が readline 補完コードに補完候補のリ
       ストとして返されます。

       直前に行われた動作が何にもマッチせず、   補完仕様が定義されたときに  -o
       dirname オプションが complete に与えられていれば、 ディレクトリ名への補
       完が試みられます。

       デフォルトでは、補完仕様が見つかった場合、 それが生成したものがなんであ
       れ、 可能性のある補完すべてのリストとして、補完コードに返されます。  デ
       フォルトの  bash 補完は試みられず、 readline のデフォルトのファイル名補
       完は無効になります。   補完仕様の定義時に   -o   default   オプションが
       complete に与えられていれば、 補完仕様が何にもマッチしなければ readline
       のデフォルトの補完が行われます。

履歴 (HISTORY)
       -o history オプションを組み込みコマンドの set で有効にすると、 
         (command history) (以前に入力したコマンドのリスト) にアクセスでき
       るようになります。 変数 HISTSIZE の値が、  履歴リストに保存するコマンド
       の数になります。  過去に入力したコマンドのうち、最新  HISTSIZE 個分 (デ
       フォルトは 500 個) のテキストが保存されます。  シェルは各コマンドを、パ
       ラメータ展開や変数展開  (前述の 展開 を参照) を行う前のかたちで履歴リス
       トに格納します。 ただし、履歴展開は実行してから格納します。  履歴展開は
       シェル変数 HISTIGNOREHISTCONTROL の値に従って実行されます。

       起動時に、履歴は  HISTFILE  変数  (デフォルトは ~/.bash_history) が示す
       ファイルの内容で初期化されます。   HISTFILE    で指定されたファイルは、
       HISTFILESIZE で指定された行数を越えないように、必要に応じて切り詰められ
       ます。 対話的なシェルが終了する際には、最近の HISTSIZE 個の行が履歴リス
       トから HISTFILE にコピーされます。 シェルオプションの histappend ( シェ
       ルの組み込みコマンド の項の shopt の説明を参照)  が有効になっていると、
       これらの行は履歴ファイルの末尾に追加されます。 このオプションが無効なら
       ば、履歴ファイルは上書きされます。 HISTFILE  が設定されていないか、履歴
       ファイルが書き込めない状態だと、   履歴は保存されません。  履歴の保存を
       行った後には、履歴ファイルは行数が HISTFILESIZE  行を越えないように切り
       詰められます。  HISTFILESIZE が設定されていなければ、切り詰めは行われま
       せん。

       組み込みコマンド fc (後述の シェルの組み込みコマンド  を参照)  を用いる
       と、履歴リストの一部をリスト・編集して再実行できます。 組み込みコマンド
       の history を用いると、履歴リストを表示・編集したり、  履歴ファイルを操
       作できます。  コマンドラインを編集する際には、 各編集モードでいろいろな
       検索コマンドが利用でき、 履歴リストへアクセスできます。

       このシェルでは、どのコマンドが履歴リストに保存されるかを制御できます。
       HISTCONTROL 変数と HISTIGNORE 変数を設定すると、 シェルは入力されたコマ
       ンドの一部しか保存しなくなります。 シェルオプションの cmdhist  を有効に
       すると、シェルは複数行に別れているコマンドの各行を 同じ履歴エントリに保
       存しようとします。 この際には、文法的な正しさを保つためにセミコロンが必
       要に応じて追加されます。  シェルオプションの lithist を有効にすると、こ
       のシェルは行の途中に セミコロンではなく改行文字を置く形でコマンドを保存
       します。  シェルオプションの設定と設定取り消しについては、後述の シェル
       の組み込みコマンド における説明を参照してください。

履歴の展開
       このシェルは、 csh の履歴展開と同じような機能をサポートしています。  こ
       のセクションでは、履歴展開で使用できる記法・機能を説明します。 この機能
       は対話的シェルならばデフォルトで有効になっていますが、 組み込みコマンド
       set+H オプション (後述の シェルの組み込みコマンド を参照) で無効に
       できます。   非対話的シェルの場合は、デフォルトでは履歴展開は行われませ
       ん。

       履歴展開は、履歴リスト中の単語を入力ストリームに入れます。 この機能を利
       用すると、コマンドを繰り返したり、 前のコマンドで指定したオプションを現
       在の入力行に挿入したり、  前のコマンドの誤りを手早く直したり、 といった
       ことが簡単にできるようになります。

       履歴展開が実行されるのは入力行全体を読み込んだ直後であり、 シェルが行を
       単語に分割するよりも前です。 履歴展開の動作は 2 段階で行われます。 まず
       最初に、置換に使う行を履歴リストから選びます。 次に、その行のどの部分を
       現在の行に書き込むかを選択します。   履歴リストから選ばれた行は
       (event) と呼ばれ、 この行のうち動作の対象となる部分を (words)と呼
       びます。  様々な (modifier) が利用でき、 選択された単語列の操作が
       可能になっています。 行の単語への分割は入力を読み込む時と同じように行わ
       れるので、  で区切られた複数の単語をクォートで括ったものは 1 つ
       の単語と見なされます。 履歴展開が行われるのは、履歴展開文字が現われた時
       です。 履歴展開文字はデフォルトでは ! です。 履歴展開文字をクォートでき
       るのは、 バックスラッシュ (\) とシングルクォートだけです。

       組み込みコマンドの shopt を用いて、何種類かあるシェルオプションを設定す
       ると、  履歴展開の動作を調整できます。 シェルオプションの histverify が
       有効で (組み込みコマンド shopt の説明を参照)、かつ readline  が使われて
       いる場合には、 履歴置換を行った結果はすぐにはシェルのパーザに渡されませ
       ん。 展開された行は readline の編集バッファに再び読み込まれ、さらに編集
       が行える状態になります。  readline を使用しており、かつシェルオプション
       の histreedit が有効である場合、履歴置換が失敗してもその結果は readline
       の編集バッファに再び読み込まれ、訂正できる状態となります。 組み込みコマ
       ンド history-p オプションを使うと、実際に履歴展開を行う前に、  どの
       ように展開されるのかを見ることができます。  組み込みコマンド history-s オプションを使うと、 コマンドを履歴リストの末尾に  (実際の実行はせず
       に) 追加できます。 追加したコマンドは、後で再呼び出しできます。

       このシェルでは、履歴展開機構で使ういろいろな文字を制御できます  (前述の
       シェル変数 の項目における histchars の説明を参照)。

   イベント指示子 (Event Designator)
       イベント指示子は、 履歴リスト中のコマンドラインエントリを参照するもので
       す。

       !      履歴置換を開始します。ただし、ブランク文字、 改行文字、=, ( のい
              ずれかが後に続く場合は除きます。
       !n     n 行目のコマンドラインを参照します。
       !-n    現在から n 行前のコマンドラインを参照します。
       !!     1 行前のコマンドラインを参照します。`!-1' と同義です。
       !string
              string  で始まるコマンドのうち、一番現在に近いところで実行したも
              のを参照します。
       !?string[?]
              string  を含むコマンドのうち、一番現在に近いところで実行したもの
              を参照します。 string の直後が改行文字ならば、最後の ?  は省略し
              ても構いません。
       ^string1^string2^
              簡易置換。 string1string2 に置換して直前のコマンドを繰り返し
              ます。  ``!!:s/string1/string2/''  と同義です  (後述の修飾子を参
              照)。
       !#     今までのところまでに打ち込んだコマンドライン全体です。

   単語指示子 (Word Designators)
       単語指示子  (word designator) は、 イベントから欲しい単語を選ぶ時に用い
       られます。 イベント指定と単語指示子のセパレータには : を用います。 単語
       指示子が ^, $, *, -, % のいずれかで始まる場合には、このセパレータは省略
       できます。 単語には行の先頭から番号が振られます。 先頭の単語が 0 番目に
       なります。 単語は現在の行に、空白 1 つで区切られて挿入されます。

       0 (ゼロ)
              0   番目の単語。このシェルにとっては、これはコマンドを表す単語で
              す。
       n      n 番目の単語。
       ^      最初の引き数。つまり 1 番目の単語です。
       $      最後の引き数。
       %      `?string?' 検索にマッチする、一番現在に近い単語。
       x-y    単語の範囲。`0-y' の省略形として `-y' が使えます。
       *      0 番目を除く全ての単語。これは `1-$' の別表現です。 イベント中に
              1  つしか単語が現われないときに  *  を使ってもエラーにはなりませ
              ん。 このような場合には空文字列が返されます。
       x*     x-$ の省略形です。
       x-     x* と同様に x-$ の省略形ですが、 ただし最後の単語は含みません。

       イベント指定なしに単語指示子が与えられた場合、 直前のコマンドがイベント
       として使われます。

   修飾子 (Modifiers)
       単語指示子 (省略可能) の後には、 以下に示す修飾子を、1 個以上のシーケン
       スのかたちで置けます。 それぞれの修飾子の前には `:' をつけます。

       h      パス名から末尾にある部分 (ファイル名) を取り除き、 前の方  (ディ
              レクトリ部) だけを残します。
       t      パス名から前の方  (ディレクトリ部)  を取り除き、  末尾にある部分
              (ファイル名) だけを残します。
       r      末尾にある    .xxx    形式のサフィックスを取り除き、    ベース名
              (basename) だけを残します。
       e      末尾のサフィックスだけを残して、全ての部分を取り除きます。
       p      新しいコマンドを表示しますが、実行はしません。
       q      置換が行われた単語をクォートし、それ以上の置換が行われないように
              します。
       x      q と同じように置換後の単語をクォートしますが、 空白文字 と改行文
              字のところで単語に分割します。
       s/old/new/
              イベント行で最初に現われた oldnew に置き換えます。/ の代わり
              に任意の区切り文字を使うこともできます。  最後の区切り文字がイベ
              ント行の最後の文字ならば、  これは省略できます。 oldnew の中
              では、 バックスラッシュ  1  つでクォートすれば区切り文字も使えま
              す。  new に & が含まれている場合には、これは old に置き換えられ
              ます。 バックスラッシュ 1 つを前に置けば &  をクォートできます。
              old  が空文字列ならば、これには前回に置換された old が設定されま
              す。  以前に履歴置換が全く行われていない場合には、現在に一番近い
              !?string[?]  の検索で使われた string が設定されます。
       &      直前の置換を繰り返します。
       g      変更をイベント行全体に適用します。  これは `:s' と組み合わせて使
              われます (例:`:gs/old/new/')。 `:s'  と一緒に使った場合には、  /
              の代わりに任意の区切り文字を使えます。  また最後の区切り文字がイ
              ベント行の最後の文字ならば、 これは省略できます。

シェルの組み込みコマンド
       特に断らない限り、このセクションで説明されている組み込みコマンドのうち
       -  で始まるオプションを受け付けるものは、オプションの終わりを表す -- も
       受け付けます。
       : [arguments]
              何もしません。このコマンドは arguments  を展開し、指定されたリダ
              イレクトを実行する以外には何も行いません。 終了コード 0 を返しま
              す。

        .  filename [arguments]
       source filename [arguments]
              filename  からコマンドを読み込み、現在のシェル環境のもとで実行し
              ます。そして filename 中で最後に実行したコマンドの終了ステータス
              を返します。     filename     にスラッシュが含まれていない場合、
              filenamePATH に含まれるディレクトリから探されます。 PATH 内
              で検索されるファイルは、実行可能である必要はありません。 bashposix   で動作していれば、 PATH 中でファイルを見つけられな
              かった場合には、 カレントディレクトリが検索されます。 組み込みコ
              マンド  shopt に対する sourcepath オプションが無効にされている場
              合、 PATH の検索は行われません。 何らかの arguments が与えられて
              いる場合、これらの引き数は filename を実行した時の位置パラメータ
              となります。  そうでない場合は、位置パラメータは変更されません。
              返却ステータスはスクリプト内で最後に実行したコマンドのステータス
              です (コマンドが全く実行されなければ 0 です)。また filename が見
              つからない場合や読み込めない場合には偽となります。

       alias [-p] [name[=value] ...]
              alias  コマンドを引き数を付けずに  (あるいは -p オプションを付け
              て) 実行すると、エイリアスのリストが 「alias  name=value」の形で
              標準出力に出力されます。  引き数を与えた場合には、value を与えら
              れた name それぞれに対するエイリアスが定義されます。 value  の末
              尾に空白があると、エイリアスが展開された時に、  空白の次の単語に
              ついてエイリアス置換があるかどうか調べられます。  引き数リスト中
              に value が与えられていない name があった場合は、 それぞれに対し
              て名前とエイリアスの値が出力されます。  エイリアスが定義されてい
              ない name が与えられなければ、 alias は真を返します。

       bg [jobspec]
              サスペンドされているジョブ jobspec を バックグラウンドで実行再開
              します。このジョブは、初めから &  を付けて起動されていたかのよう
              に動作を続けます。 jobspec が無い場合には、 シェルが記録している
               (current job) が使われます。 bg jobspec は通常  0
              を返しますが、ジョブ制御が無効であるときに実行した場合や、  ジョ
              ブ制御が有効であっても jobspec  が有効なジョブを指定していない場
              合や  jobspec がジョブ制御無しで実行したジョブを指定している場合
              は異なる値を返します。

       bind [-m keymap] [-lpsvPSV]
       bind [-m keymap] -x keyseq:shell-command
       bind [-m keymap] [-q function] [-u function] [-r keyseq]
       bind [-m keymap] -f filename
       bind [-m keymap] keyseq:function-name
              readline の現在のキー割り当てと関数割り当てを表示します。 あるい
              はキーシーケンスを readline の関数やマクロに割り当てます。受け付
              ける割り当ての記法は .inputrc と全く同じですが、  それぞれの割り
              当ては別々の引き数として渡さなければなりません。          例えば
              '"\C-x\C-r": re-read-init-file' のように指定します。  オプション
              を指定した場合には、以下のような意味を持ちます:
              -m keymap
                     キーマップ    keymap   を、以降の割り当てによって変更しま
                     す。指定できる   keymap   名は、emacs,    emacs-standard,
                     emacs-meta,    emacs-ctlx,   vi,   vi-move,   vi-command,
                     vi-insert です。 vivi-command と同じです。 また emacsemacs-standard と同じです。
              -l     readline 関数の名前を全てリスト表示します。
              -p     readline  の関数の名前と割り当てを表示します。 表示は、再
                     び読み込みできる形式で出力されます。
              -P     readline の関数の現在の名前と割り当てをリスト表示します。
              -v     readline の変数名と値を表示します。  表示は、再び読み込み
                     できる形式で出力されます。
              -V     readline の現在の変数名と値をリスト表示します。
              -s     readline  のマクロに割り当てられたキーシーケンスと、 マク
                     ロが出力する文字列を表示します。 表示は、再び読み込みでき
                     る形式で出力されます。
              -S     readline  のマクロに割り当てられたキーシーケンスと、 マク
                     ロが出力する文字列を表示します。
              -f filename
                     キー割り当てを filename から読み込みます。
              -q function
                     指定された function を呼び出すキーを問い合わせます。
              -u function
                     指定された function  に割り当てられているキーの割り当てを
                     全て取り消します。
              -r keyseq
                     keyseq に対する現在の割り当てを削除します。
              -x keyseq:shell-command
                     keyseq  が押されるたびごとに、 shell-command が実行される
                     ようにします。

              認識できないオプションが与えられた場合やエラーが起きた場合を除け
              ば、 返り値は 0 です。

       break [n]
              for, while, until, select のループから抜けます。n が指定されてい
              れば、n レベル分 break します。 n  は  1  以上でなければなりませ
              ん。  n がループの深さよりも大きい場合には、全てのループから抜け
              ます。 break が実行された時にシェルがループを実行していれば、 返
              り値は 0 になります。

       builtin shell-builtin [arguments]
              指定されたシェル組み込みコマンドを実行します。コマンドには
              arguments を引き数として渡し、このコマンドの終了ステータスを返し
              ます。  これはシェル組み込みコマンドと同じ名前の関数を定義する時
              に便利で、  その関数内で組み込みコマンドを使った時に、その機能を
              損ないません。  組み込みコマンド cd は普通、これを使って再定義さ
              れます。 shell-builtin  がシェル組み込みコマンドでなければ、終了
              ステータスは偽となります。

       cd [-LP] [dir]
              カレントディレクトリを  dir  に変更します。 変数 HOME の値が dir
              のデフォルト値です。変数 CDPATH は、 dir  を含むディレクトリの検
              索パスを定義します。  CDPATH 内ではディレクトリ名はコロン (:) で
              区切ります。 CDPATH 中に空のディレクトリ名がある場合、これはカレ
              ントディレクトリ  (つまり ``.'') を意味します。 dir がスラッシュ
              (/) で始まる場合には、  CDPATH  は使われません。  -P  オプション
              は、シンボリックリンクを辿らないで物理的なディレクトリ構造を  使
              うように指示します (組み込みコマンド set-P  オプションも参
              照)。  -L オプションを指定すると、シンボリックリンクを辿るように
              なります。 引き数に - を指定するのは、 $OLDPWD  を指定するのと同
              じ意味です。  ディレクトリの変更が成功した場合には返り値は真にな
              ります。 そうでない場合には偽になります。

       command [-pVv] command [arg ...]
              command に引き数 args を付けて実行します。シェル関数の通常の参照
              は行いません。  組み込みコマンドと PATH 内で見つかるコマンドだけ
              が実行されます。 -p オプションが与えられると、 command  の検索を
              行う際に  PATH のデフォルト値が使われます。これにより、 標準ユー
              ティリティを全て確実に見つけられます。 -V オプションまたは -v オ
              プションを与えると、  command の説明が出力されます。 -v オプショ
              ンでは、 command  を起動する時に使われるコマンドやファイル名を示
              す単語が表示されます。  -V  ではさらに詳しい説明が表示されます。
              -V  オプションや   -v   オプションを与えた場合、終了ステータスは
              command  が見つかれば  0 となり、見つからなければ 1 となります。
              どちらのオプションも与えなかった場合に、エラーが起きたり command
              を見つけられなかったりすると、終了ステータスは  127 になります。
              それ以外の場合には、組み込みコマンド  command   の終了ステータス
              は、 command の終了ステータスです。

       compgen [option] [word]
              option  にしたがって、word の補完マッチのリストを生成します。 オ
              プションには  complete  組み込みコマンドと同じものが指定できます
              が、  -p-r は指定できません。 マッチのリストは標準出力に出力
              されます。 -F-C オプションを使用したときは、  プログラム補完
              機能によって設定されたさまざまなシェル変数は、  利用可能であって
              も有用な値を持ちません。

              マッチは、同じフラグで指定されたプログラム補完コードが  直接補完
              を生成するのと同じ方法で生成されます。 word が指定されると、word
              にマッチする補完だけが表示されます。

              戻り値は、  無効なオプションが指定された場合やマッチが生成されな
              かった場合以外は 真になります。

       complete  [-abcdefjkvu]  [-o  comp-option] [-A action] [-G globpat] [-W
       wordlist] [-P prefix] [-S suffix]
              [-X filterpat] [-F function] [-C command] name [name ...]
       complete -pr [name ...]
              name  引き数それぞれを、どのように補完するのかを指定します。  -p
              オプションが指定された場合や、  何もオプションが指定されなかった
              場合は、 既存の補完指定が (入力として再利用できるかたちで)  出力
              されます。 -r オプションは、それぞれの name の補完指定を削除しま
              す。 name が指定されなかった場合はすべての補完指定を削除します。

              単語補完が試みられたときにこれらの補完指定に加えられる処理は、
              前述の プログラム補完 で示しています。

              他のオプションが指定されたときは、以下のような意味を持ちます。
              -G, -W, -X オプションの引き数 (必要ならば -P-S  オプションの
              場合も) はクォートして、 complete 組み込みコマンドが呼び出される
              前に展開されないようにすべきです。
              -o comp-option
                      comp-option   は補完仕様の動作をいくつかの点から制御し、
                      単純な補完生成以外ができるようにします。  comp-option に
                      は以下のどれかひとつを指定できます。
                      default 補完仕様がマッチを全く生成しなかった場合に、
                              readline のデフォルトの補完を用います。
                      dirnames
                              補完仕様がマッチを全く生成しなかった場合に、
                              ディレクトリ名を補完しようとします。
                      filenames
                              補完仕様がファイル名を生成することを readline に
                              伝え、 readline がファイル名特有の処理 (ディレク
                              トリ名にスラッシュを加えたり、末尾の空白を削除し
                              たり、など)  を行えるようにします。 シェル関数と
                              共に用いることを想定しています。
              -A action
                      action は補完対象リストの生成動作で、 以下のどれかひとつ
                      を指定します。
                      alias   エイリアス名。-a でも指定できます。
                      arrayvar
                              配列変数名。
                      binding readline キー割り当て名。
                      builtin シェル組み込みコマンド名。-b でも指定できます。
                      command コマンド名。-c でも指定できます。
                      directory
                              ディレクトリ名。-d でも指定できます。
                      disabled
                              無効にされているシェル組み込みコマンドの名前。
                      enabled 有効にされているシェル組み込みコマンドの名前。
                      export  エクスポートされたシェル変数の名前。 -e でも指定
                              できます。
                      file    ファイル名。-f でも指定できます。
                      function
                              シェル関数の名前。
                      helptopic
                              help    組み込みコマンドで許可されたヘルプトピッ
                              ク。
                      hostname
                              HOSTFILE  シェル変数で指定されたファイルから得ら
                              れたホスト名。
                      job     ジョブ制御が有効であれば、ジョブ名。-j  でも指定
                              できます。
                      keyword シェルの予約語。-k でも指定できます。
                      running ジョブ制御が有効であれば、実行中のジョブ名。
                      setopt  set 組み込みコマンドの -o オプションで有効な引き
                              数。
                      shopt   shopt 組み込みコマンドで許可されたシェルオプショ
                              ン名。
                      signal  シグナル名。
                      stopped ジョブ制御が有効であれば、停止しているジョブ名。
                      user    ユーザ名。-u でも指定できます。
                      variable
                              すべてのシェル変数名。-v でも指定できます。
              -G globpat
                      ファイル名展開パターン  globpat が展開されて補完対象のリ
                      ストを生成します。
              -W wordlist
                      wordlistIFS 特殊変数を区切り文字として分割され、  そ
                      れぞれの分割された単語は展開されます。  補完対象は、展開
                      結果のリストのメンバのうち、  補完中の単語がマッチするも
                      のです。
              -C command
                      command  がサブシェル環境で実行され、 その出力が補完対象
                      として使用されます。
              -F function
                      シェル関数  function  は現在のシェル環境で実行されます。
                      関数が終了したときに、補完対象が  COMPREPLY 配列変数から
                      取得されます。
              -X filterpat
                      filterpat はファイル名展開として使用されるパターンです。
                      先行するオプション・引き数によって生成された補完対象リス
                      トに適用され、 filterpat  とマッチするそれぞれの補完がリ
                      ストから削除されます。 filterpat の前に ! を置くとパター
                      ンを否定します。 この場合、filterpat  にマッチしない補完
                      が削除されます。
              -P prefix
                      他のすべてのオプションが作用したあとに、 prefix がそれぞ
                      れの補完対象の先頭に追加されます。
              -S suffix
                      他のすべてのオプションが作用したあとに、 prefix がそれぞ
                      れの補完対象の末尾に追加されます。

              不正なオプションが指定された場合、-p-r  以外のオプションで
              name が指定されなかった場合、 存在しない name の指定によって補完
              が削除されようとした場合、  補完の指定の追加に失敗した場合、を除
              いては、返り値は真になります。

       continue [n]
              for, while, until, select ループの次の繰り返し分から実行を継続し
              ます。 n を指定すると、深さを n 個分上がったループで実行を継続し
              ます。 n は 1 以上でなければなりません。 n  がループの深さよりも
              大きい場合、  最後のループ (「トップレベル」のループ) で実行が継
              続されます。 continue が実行された時にシェルがループの実行中でな
              かった場合を除き、 返り値は 0 となります。

       declare [-afFirx] [-p] [name[=value]]
       typeset [-afFirx] [-p] [name[=value]]
              変数を宣言したり、変数に属性を与えたりします。 name を指定しなけ
              れば、変数の値が表示されます。 -p オプションを指定すると、  name
              それぞれの属性と値が表示されます。 -p を使うと他のオプションは無
              視されます。  -F  オプションを指定すると、関数定義の表示を止めま
              す。  関数の名前と属性だけが出力されます。 -F オプションを指定す
              ると、 -f オプションも指定したことになります。以下のオプションを
              使うと、 指定した属性を持つ変数の出力を制限したり、 変数に属性を
              与えたりできます:
              -a     name はそれぞれ配列変数 (前述の 配列 を参照) です。
              -f     関数名だけを使います。
              -i     変数を整数として扱います。変数に値が代入された時に算術式
                     評価 ( 算術式評価 を参照) が実行されます。
              -r     name  を読み込み専用にします。 これ以降、代入文を用いて値
                     を代入したり unset したりできなくなります。
              -x     name に印を付け、  これ以降に実行するコマンドに環境経由で
                     エクスポートします。

              `-'  ではなく  `+' を使うと属性を消します。 ただし例外として、+a
              を使って配列変数を破棄することはできません。    関数内で使った場
              合、  local コマンドを使った場合と同様に name はローカルとなりま
              す。 返り値は基本的には  0  ですが、不正なオプションに出会った場
              合、  ``-f foo=bar'' を使って関数を定義しようとした場合、 読み込
              み専用の変数に代入しようとした場合、  複合代入構文を使わずに配列
              変数に値を代入しようとした場合 (前述の 配列 を参照)、name のいず
              れかが正しいシェル変数名でない場合、  読み込み専用変数の読み込み
              専用属性を無効にしようとした場合、  存在しない関数を -f オプショ
              ンで表示しようとした場合は除きます。

       dirs [-clpv] [+n] [-n]
              オプションが無いときは、  現在記憶しているディレクトリのリストが
              表示されます。    デフォルトでは、全てのディレクトリ名は空白で区
              切って 1 行で表示されます。ディレクトリは pushd コマンドによって
              リストに追加されます。 popd コマンドはリストからエントリを削除し
              ます。
              +n     オプション無しで dirs  を起動した時に表示されるリストの、
                     左から数えて  n 番目のエントリを表示します。 エントリは 0
                     から始まります。
              -n     オプション無しで dirs  を起動した時に表示されるリストの、
                     右から数えて  n 番目のエントリを表示します。 エントリは 0
                     から始まります。
              -c     全てのエントリを削除し、ディレクトリスタックをクリアしま
                     す。
              -l     長い形式のリスト表示を行います。   デフォルトのリスト表示
                     フォーマットでは、 チルダを使ってホームディレクトリを表し
                     ます。
              -p     1 行に 1 エントリの形でディレクトリスタックを出力します。
              -v     1 行に 1 エントリの形でディレクトリスタックを出力します。
                     各エントリの前にはスタック内での番号が表示されます。

              不正なオプションが与えられた場合とインデックス n  がディレクトリ
              スタックの終端を越えている場合を除き、 返り値は 0 となります。

       disown [-ar] [-h] [jobspec ...]
              オプション無しの場合には、それぞれの  jobspec がアクティブなジョ
              ブのテーブルから削除されます。  -h  オプションが与えられている場
              合、どの jobspec もテーブルから削除されず、 シェルが SIGHUP を受
              け取ってもそのジョブには SIGHUP が送られないように印が付けられま
              す。  jobspec がなく、かつ -a オプションも -r オプションも与えら
              れていない場合には、が使われます。 jobspec  が与え
              られていない場合、  -a オプションは全てのジョブを削除するか 全て
              のジョブに印を付けるという意味 となります。 jobspec 引き数なしで
              -r オプションを指定すると、 実行中のジョブだけが操作の対象となり
              ます。 jobspec が不正なジョブを指定していなければ、返り値は 0 と
              なります。

       echo [-neE] [arg ...]
              arg  を空白で区切って出力し、最後に改行を出力します。 終了ステー
              タスは常に 0 です。 -n  が指定された場合、最後の改行は出力されま
              せん。  -e  オプションを指定した場合、  以下に示す、バックスラッ
              シュのエスケープ文字が解釈されるようになります。 -E オプションを
              指定すると、  デフォルトでこのようなエスケープ文字が解釈されるシ
              ステムであっても、  エスケープ文字が解釈されないようになります。
              xpg_echo  シェルオプションを用いると、 echo がこれらのエスケープ
              文字を展開するかどうかの    デフォルト動作を動的に決定できます。
              echo-- をオプションの終わりと解釈しません。 echo は以下のエ
              スケープシーケンスを解釈します:
              \a     警告(ベル)
              \b     バックスペース
              \c     行末に改行を付けない
              \e     エスケープ文字
              \f     フォームフィード文字
              \n     改行
              \r     復帰文字
              \t     水平タブ
              \v     垂直タブ
              \\     バックスラッシュ
              \nnn   ASCII コードの 8 進値が nnn である文字 (1  文字につき数字
                     3 桁)。
              \xnnn  ASCII コードの 16 進値が nnn である文字 (1 文字につき数字
                     3 桁)。

       enable [-adnps] [-f filename] [name ...]
              組み込みコマンドの有効/無効を設定します。 シェルは通常はディスク
              コマンドの前に組み込みコマンドを探しますが、  組み込みコマンドを
              無効にすると、  シェルの組み込みコマンドと同じ名前を持つディスク
              コマンドを、  完全なパス名を指定しなくても実行できます。 -n を用
              いると、それぞれの  name   は無効となります。   それ以外の場合に
              は、name  は有効となります。  例えば、シェル組み込みのものでなく
              PATH 上にある test バイナリを使うには ``enable -n test''.   を実
              行します。 -f オプションは新しい組み込みコマンド name を共有オブ
              ジェクト filename からロードするという意味です。  これは動的ロー
              ドをサポートしているシステムで使えます。 -d オプションは、以前に
              -f  オプションでロードした組み込みコマンドを削除します。  引き数
              name  が与えられなかった場合や、 -p オプションが与えられた場合、
              シェルの組み込みコマンドのリストが表示されます。  他にオプション
              引き数が指定されていない場合には、  有効になっているシェル組み込
              みコマンド全てからなるリストが表示されます。 -n を与えると、無効
              にされている組み込みコマンドだけが出力されます。 -a を与えると、
              それぞれ有効かどうかの表示付きで全ての組み込みコマンドが出力され
              ます。  -s を与えると、出力されるのは POSIX の組み込みコマン
              ドだけに制限されます。  name  がシェル組み込みコマンドでない場合
              と、  共有オブジェクトからの新しい組み込みコマンドのロードに失敗
              した場合を除き、 返り値は 0 となります。

       eval [arg ...]
              arg を読み込み、結合して 1 つのコマンドにされます。 次にシェルは
              このコマンドを読み込んで実行し、  その終了ステータスが eval の値
              として返されます。  args  が無い場合や空の引き数しかない場合には
              eval は 0 を返します。

       exec [-cl] [-a name] [command [arguments]]
              command が指定されていると、シェルはこのコマンドに置き換えられま
              す。 新しいプロセスは生成されません。 argumentscommand  に対
              する引き数となります。 -l オプションを与えると、シェルは command
              に渡す 0  番目のオプションの先頭にダッシュを設定します。  これは
              login(1) が行う動作です。 -c オプションを与えると、 command は空
              の環境で実行されます。 -a を与えると、シェルは実行するコマンドに
              0  番目の引き数として name を渡します。何らかの理由で command が
              実行できない場合には非対話的シェルは終了します。  ただしシェルオ
              プション execfail が設定されている場合は終了せず、この場合には偽
              が返されます。  ファイルが実行できない場合には、対話的シェルは偽
              を返します。  command が指定されていない場合、任意のリダイレクト
              はカレントシェルで効果を表し、 終了ステータスは  0  となります。
              リダイレクトのエラーが起きた場合には、終了ステータスは  1 となり
              ます。

       exit [n]
              ステータス n でシェルを終了させます。  n  を省略すると、  終了ス
              テータスは最後に実行したコマンドの終了ステータスとなります。
              シェルが終了する前には、 EXIT に対するトラップが実行されます。

       export [-fn] [name[=word]] ...
       export -p
              与えられた name には印が付けられ、  これ以降に実行するコマンドの
              環境に  自動的にエクスポートされるようになります。 -f オプション
              を与えると、 name は関数を参照します。  name  を与えなかった場合
              や、  -p オプションを与えた場合には、 このシェル内でエクスポート
              されている全ての名前のリストが出力されます。 -n オプションを与え
              ると、指定した変数からエクスポート属性が取り除かれます。  不正な
              オプションがあった場合、  name  のいずれかが不正なシェル変数名で
              あった場合、  関数でない名前に対して -f オプションを与えた場合を
              除き、 export は終了ステータス 0 を返します。

       fc [-e ename] [-nlr] [first] [last]
       fc -s [pat=rep] [cmd]
              フィックスコマンド (Fix Command)。 最初の形式では、  first  から
              last までの範囲のコマンドが履歴リストから選択されます。 firstlast は文字列 (その文字列で始まる最後のコマンド) や 数値 (履歴リ
              スト中でのインデックス。    負の値は現在のコマンド番号からのオフ
              セットとして扱われます) としても指定できます。 last が指定されて
              いなければ、リスト表示の場合には現在のコマンドが設定され   (した
              がって ``fc -l -10'' で最近のコマンド 10 個が出力されます)、それ
              以外の場合には first が設定されます。 first が指定されていなけれ
              ば、編集の場合には前のコマンドが設定され、  リスト表示の場合には
              -16 が設定されます。

              -n  オプションを与えるとリストにコマンド番号が付きません。 -r オ
              プションを与えるとコマンドの順序が逆になります。 -l オプションを
              与えると、コマンドは標準出力にリスト表示されます。  それ以外の場
              合には、これらのコマンドが書かれたファイルに対し、 ename  で指定
              したエディタが起動されます。  ename が与えられていない場合は、変
              数  FCEDIT  の値が使われ、   FCEDIT   も設定されていない場合には
              EDITOR  の値が使われます。  どちらの変数も設定されていなければ、
              vi が使われます。 編集が終了すると、編集されたコマンドがエコー表
              示され、実行されます。

              2   番目の形式では、pat  の部分をそれぞれ  rep  で置き換えた後に
              command が再実行されます。  これを利用している便利なエイリアスに
              ``r=fc  -s''  があります。  これを用いると ``r cc'' と入力すれば
              ``cc'' で始まる最も新しいコマンドを実行でき、 ``r'' の入力すれば
              直前のコマンドを再実行できます。

              最初の形式を用いた場合、不正なオプションがあるか、  first または
              last が履歴行の範囲外を指定していなければ、返り値は  0  となりま
              す。  -e オプションが与えられた場合、 返り値は最後に実行されたコ
              マンドの返り値となるか、  あるいはコマンドの一時ファイルでエラー
              が起きた場合には偽となります。 2 番目の形式を用いた場合、 終了ス
              テータスは再実行されたコマンドの終了ステータスとなります。  ただ
              し、  cmd が有効な履歴行を指定していない場合は別で、この場合には
              fc は偽を返します。

       fg [jobspec]
              jobspec の実行をフォアグラウンドで再開し、これをカレントジョブと
              します。  jobspec が無い場合、シェルが記録している
              が使われます。  返り値はフォアグラウンドで再開されたコマンドの返
              り値ですが、 ジョブ制御が無効であるときに実行した場合や、 ジョブ
              制御が有効であっても jobspec  が有効なジョブを指定していない場合
              や  jobspec がジョブ制御無しで実行したジョブを指定している場合に
              は偽となります。

       getopts optstring name [args]
              getopts   はシェルの手続きが位置パラメータを解釈するために使いま
              す。 optstring は識別の対象であるオプション文字列です。 ある文字
              の後にコロンがある場合、  そのオプションは引き数を取ることが期待
              されます。  引き数は空白でオプション文字と区切られていなければな
              りません。 コロンと疑問符はオプション文字として使えません。 呼び
              出される度に、   getopts  は次に見つかったオプションをシェル変数
              name に格納し (name が存在しなければ初期化を行います)、 次に処理
              される引き数のインデックスを変数 OPTIND に格納します。 OPTIND は
              シェルまたはシェルスクリプトが呼び出される度に 1  に初期化されま
              す。 オプションが引き数を必要とする場合には、 getopts はその引き
              数を変数 OPTARG に格納します。 シェルが OPTIND  を自動的に再設定
              することはありません。  1 つのシェルが呼び出されている間に別のパ
              ラメータの組合せを使う場合には、 getopts  の呼び出しの間に手動で
              再設定を行わなければなりません。

              オプションの終わりに到達すると、 getopts は 0 より大きい返り値で
              終了します。 OPTIND にはオプションでない最初の引き数のインデック
              スが設定され、 name には ? が設定されます。

              getopts は通常位置パラメータを展開しますが、他の引き数が args に
              指定されている場合には、 getopts  は位置パラメータでなくこれらを
              展開します。

              getopts は 2 通りの方法でエラーを報告できます。 optstring の最初
              の文字がコロンならば、  (silent)  エラー報告が行われます。
              通常の操作では、不正なオプションがある場合や  オプションの引き数
              が足りない場合に診断メッセージが出力されます。 変数 OPTERR に  0
              が設定されている場合、エラーメッセージは全く出力されません。  こ
              れは、 optstring の最初の文字がコロンでなくても同じです。

              不正なオプションがあった場合、 getopts は ? を  name  に設定しま
              す。  さらに、静かなモードでない場合にはエラーメッセージが出力さ
              れ、 OPTARG の設定が取り消されます。 getopts  が静かなモードであ
              れば、見つかったオプション文字は OPTARG に設定され、診断メッセー
              ジは出力されません。

              必要な引き数が見つからず、かつ getopts  が静かなモードでない場合
              には、疑問符  (?)  が  name に設定され、 OPTARG の設定が取り消さ
              れ、診断メッセージが出力されます。  getopts   が静かなモードなら
              ば、コロン  (:)  が  name に設定され、 OPTARG には見つかったオプ
              ション文字が設定されます。

              (指定の有無に関係なく) オプションが見つかった場合、 getopts は真
              を返します。  オプションの最後に到達した場合や、エラーが起きた場
              合には、 getopts は偽を返します。

       hash [-r] [-p filename] [name]
              name それぞれに対して、 $PATH 内のディレクトリの検索を行ってコマ
              ンドの完全なファイル名を調べ、  その結果を記憶します。  -p  オプ
              ションが指定されると、パス検索は実行されず、 filename がそのコマ
              ンドの完全なファイル名として使われます。  -r  オプションを与える
              と、シェルは記憶している位置を全て忘れます。  引き数が与えられて
              いない場合は、  記憶しているコマンドに関する情報が出力されます。
              name    が見つからない場合と不正なオプションが与えられた場合を除
              き、 返却ステータスは真となります。

       help [-s] [pattern]
              組み込みコマンドのヘルプ情報を表示します。  pattern が指定された
              場合には、 help はこの pattern  にマッチする全てのコマンドに関す
              る詳しいヘルプを出力します。 それ以外の場合には、 全ての組み込み
              コマンドと制御構造についての説明が出力されます。  -s  オプション
              は、表示されるヘルプ情報を短い書式の使用法に限定します。 pattern
              にマッチするコマンドが全くない場合を除き、返却ステータスは 0  で
              す。

       history [n]
       history -c
       history -d offset
       history -anrw [filename]
       history -p arg [arg ...]
       history -s arg [arg ...]
              オプションがない場合には、行番号付きでコマンド履歴を表示します。
              * 付きでリスト表示されている行は変更された行です。 引き数 n を指
              定すると、最新の  n 行だけがリスト表示されます。 filename が与え
              られている場合、 これは履歴ファイルの名前として使われます。 これ
              が与えられていない場合には  HISTFILE の値が使われます。(指定され
              ていれば) オプションは以下の意味を持ちます:
              -c     履歴リストの全てのエントリを削除し、クリアします。
              -d offset
                     offset 番目にある履歴エントリを削除します。
              -a     「新しい」履歴行 (bash の現在のセッションの開始以来入力さ
                     れた履歴行) を履歴ファイルに追加します。
              -n     まだ履歴ファイルから読み込んでいない履歴行を 現在の履歴リ
                     ストに読み込みます。 これらは、bash  の現在のセッションの
                     開始以降に 履歴ファイルに追加された行です。
              -r     履歴ファイルの内容を読み込み、これらを現在の履歴として用
                     います。
              -w     現在の履歴を履歴ファイルに書き込みます。履歴ファイルの内
                     容は上書きされます。
              -p     後に続く args に対して履歴置換を行い、 その結果を標準出力
                     に表示します。   この結果は履歴リストには格納されません。
                     通常の履歴展開が行われないようにするため、 arg はそれぞれ
                     クォートしなければなりません。
              -s     args を 1 つのエントリとして履歴リストに格納します。 履歴
                     リストの最後のコマンドは、  args が追加される前に削除され
                     ます。

              不正なオプションがある場合、  履歴ファイルの読み書きの間にエラー
              が起きた場合、 -d オプションの引き数として不正な offset の値が与
              えられた場合、 -p オプションの引き数として与えられた履歴展開が失
              敗した場合を除き、 返り値は 0 になります。

       jobs [-lnprs] [ jobspec ... ]
       jobs -x command [ args ... ]
              最初の形式を実行すると、アクティブなジョブがリスト表示されます。
              オプションは以下の意味を持ちます:
              -l     通常の情報に加えて、プロセス ID をリスト表示します。
              -p     そのジョブが属するプロセスグループのリーダーのプロセス ID
                     だけを表示します。
              -n     ユーザがステータスを最後に通知されて以来、 ステータスの変
                     更があったジョブに関する情報だけを表示します。
              -r     実行中のジョブだけを出力します。
              -s     停止中のジョブだけを出力します。

              jobspec が与えられている場合、  そのジョブに関する情報だけが出力
              されるます。 不正なオプションがある場合や、不正な jobspec が与え
              られた場合を除き、返却ステータスは 0 です。

              -x オプションが与えられた場合、 jobscommandargs 中で見つ
              かった  jobspec  を全て対応するプロセスグループ  ID に置き換え、
              args を渡して command を実行し、その終了ステータスを返します。

       kill [-s sigspec | -n signum | -sigspec] [pid | jobspec] ...
       kill -l [sigspec | exit_status]
              sigspec  または  signum  で指定されたシグナルを、   pid   または
              jobspec で指定されたプロセスに送ります。 sigspecSIGKILL のよ
              うなシグナル名、またはシグナルの番号です。 signum はシグナルの番
              号です。 sigspec がシグナル名ならば、その名前には SIG プレフィッ
              クスはあっても無くても構いません。   sigspec    が無い場合には、
              SIGTERM  が指定されたものとします。 引き数に -l を与えるとシグナ
              ル名がリスト表示されます。 -l と同時に引き数を与えると、  引き数
              に対応するシグナルの名前がリスト表示され、 返却ステータスは 0 と
              なります。 -l に対する引き数 exit_status は、 シグナル番号、また
              はシグナルによって終了させられた  プロセスの終了ステータスを指定
              する数です。 少なくとも 1 つのシグナルを正常に送れた場合、  kill
              は真を返します。  エラーが起きた場合や不正なオプションがあった場
              合には、 kill は偽を返します。

       let arg [arg ...]
              各 arg は評価される算術式です ( 算術式展開 を参照)。 最後の  arg
              を評価した結果が 0 であれば、 let は 1 を返します。 それ以外の場
              合には 0 が返されます。

       local [option] [name[=value] ...]
              それぞれの引き数に対して  name  という名前のローカル変数が生成さ
              れ、 value が代入されます。 option には、 declare コマンドに使え
              るオプションがすべて使えます。 関数内で local を使った場合、この
              変数  name  の可視スコープは、この関数とこの関数の子に制限されま
              す。 オペランドが無い場合、 local はローカル変数の一覧を標準出力
              に出力します。 関数の内部以外で local を使うとエラーになります。
              local が関数の外部で使われたり、  不正な  name  が与えられたり、
              name が読み取り専用であったりしなければ、 local の返却ステータス
              は 0 となります。

       logout ログインシェルを終了します。

       popd [-n] [+n] [-n]
              ディレクトリスタックからエントリを削除します。  引き数が無い場合
              には、スタック先頭のディレクトリが削除され、  新しく先頭となった
              ディレクトリへの  cd  が実行されます。  引き数が指定された場合に
              は、これは以下の意味を持ちます:
              +n     dirs  で表示されるリストの左から数えて n 番目のエントリを
                     削除します。 エントリは 0  から数えます。例えば、  ``popd
                     +0'' は最初のディレクトリを削除し、 ``popd +1'' は 2 番目
                     のディレクトリを削除します。
              -n     dirs で表示されるリストの右から数えて n  番目のエントリを
                     削除します。  エントリは  0 から数えます。例えば、 ``popd
                     -0'' は最後のディレクトリを削除し、 ``popd -1''  は最後の
                     1 つ前のディレクトリを削除します。
              -n     スタックからディレクトリを削除する際に、 通常のディレクト
                     リ変更を行いません。 したがって、スタックだけが操作されま
                     す。

              popd  コマンドが成功すれば、 dirs も実行され、返却ステータスは 0
              となります。 popd が偽を返すのは、不正なオプションがあった場合・
              ディレクトリスタックが空の場合・  ディレクトリスタックの存在しな
              いエントリが指定された場合・    ディレクトリ変更に失敗した場合で
              す。

       printf format [arguments]
              arguments    を整形して標準出力に書き出します。   フォーマットは
              format で制御します。 format は 3 つのタイプのオブジェクトを含む
              文字列です。 3 つのオブジェクトとは、(そのまま標準出力にコピーさ
              れる) プレーン文字・ (変換されて標準出力にコピーされる) 文字エス
              ケープシーケンス・ (その後に続く引き数 argument それぞれの表示に
              用いられる) 表示フォーマット指定、です。 printf(1)  標準のフォー
              マット以外に、以下のフォーマットが使えます。     %b     を用いる
              と、printf は対応する argument 中の バックスラッシュのエスケープ
              シーケンスを展開します。  また  %q を用いると、printf は対応する
              argument  をシェルの入力として再利用できるフォーマットで出力しま
              す。

              format  は必要に応じて再利用され、  全ての  arguments を処理しま
              す。 与えられたよりも多くの argumentsformat  が必要とする場
              合、余分のフォーマット指定は、  0 と空文字列のうち、適切な方が指
              定されたかのように動作します。 成功した場合の返り値は 0 で、失敗
              した場合の返り値は 0 以外です。

       pushd [-n] [dir]
       pushd [-n] [+n] [-n]
              ディレクトリをディレクトリのスタックに追加するか、    スタックを
              ローテートさせます。  この時、新しいスタックの最も上にあるものを
              カレントの作業ディレクトリにします。 引き数を与えなければ、 一番
              上の 2 つのディレクトリを交換し、0 を返します。 ただし、ディレク
              トリスタックが空の場合を除きます。  引き数を与えた場合には、以下
              の意味を持ちます:
              +n     スタックをローテートさせ、n  番目のディレクトリを一番上に
                     します。   このとき  dirs  が表示するリストは左から数え始
                     め、その左端は 0 となります。
              -n     スタックをローテートさせ、n  番目のディレクトリを一番上に
                     します。   このとき  dirs  が表示するリストは右から数え始
                     め、その右端は 0 となります。
              -n     ディレクトリをスタックに追加した時に、 通常のディレクトリ
                     変更を行いません。   したがって、スタックだけが操作されま
                     す。
              dir    dir をディレクトリスタックの一番上に追加します。 また、こ
                     のディレクトリを新しいカレントの作業ディレクトリにしま
                     す。

              pushd コマンドが成功すると、 dirs コマンドも実行されます。  最初
              の形式を使った場合、  dir  への cd が失敗しなければ、 pushd は 0
              を返します。 2 番目の形式を使った場合にも、 pushd は基本的には 0
              を返します。 ただし、ディレクトリスタックが空の場合・ ディレクト
              リスタックの存在しない要素が指定された場合・  指定された新しいカ
              レントディレクトリへの    ディレクトリ変更が失敗した場合は除きま
              す。

       pwd [-LP]
              現在の作業ディレクトリの絶対パス名を出力します。 -P オプションが
              指定された場合や、組み込みコマンド set-o physical オプション
              が有効になっている場合には、  出力されるパス名にはシンボリックリ
              ンクは含まれません。  -L オプションを使うと、 出力されるパス名に
              はシンボリックリンクが含まれているかもしれません。  カレントディ
              レクトリの名前を読む際にエラーが起きたり、  不正なオプションが与
              えられなければ、返却ステータスは 0 となります。

       read [-ers] [-t timeout] [-a aname] [-p prompt] [-n nchars] [-d  delim]
       [name ...]
              標準入力から 1 行を読み込み、最初の単語を最初の name に代入し、2
              番目の単語を 2 番目の name に代入します。以降も同様です。 余った
              単語とそれらの間の区切り文字は、最後の   name   に代入されます。
              name よりも標準入力から読み込んだ単語の方が少ない場合には、 余っ
              ている  name  には空文字列が値として代入されます。  IFS 中の文字
              が、行を単語に分割するために使われます。    バックスラッシュ文字
              (\)  を使うと、 次に読み込んだ文字の特殊な意味を消したり、行を連
              結したりできます。  オプションが与えられていれば、以下の意味を持
              ちます:
              -a aname
                     単語を配列変数  aname  にインデックス順に代入します。イン
                     デックスは  0  から始まります。  新しい値が代入される前に
                     は、 aname の設定は消されます。他の name 引き数は無視され
                     ます。
              -d delim
                     改行ではなく、delim  の最初の文字が、入力行を終了するため
                     に使われます。
              -e     標準入力を端末から読み込む場合、     readline     (前述の
                     READLINE ライブラリ のセクションを参照)  を使って行を取得
                     します。
              -n nchars
                     組み込みコマンド read は、 入力行全体が読み込まれるのを待
                     たず、 文字 nchars を読み込んだ時に戻ります。
              -p prompt
                     入力を読み込もうとする前にを表示します。 末尾に
                     改行は付きません。 プロンプトが表示されるのは、入力を端末
                     から読み込む場合だけです。
              -r     バックスラッシュはエスケープ文字として作用しません。 バッ
                     クスラッシュは行の一部と見なされます。 特に、バックスラッ
                     シュと改行の組合せを使って 複数の行を接続することはできま
                     せん。
              -s     静かな  (silent) モード。端末に入力が行われても、文字はエ
                     コーされません。
              -t timeout
                     入力行全体が timeout 秒以内で読み込まれない場合、 read を
                     タイムアウトさせて、失敗の状態を返します。 このオプション
                     は、 read  が入力を端末やパイプから読み込んでいない場合、
                     何も効果がありません。

              name が全く与えられていない場合、読み込まれた行は変数 REPLY に代
              入されます。ファイル末尾に到達したり read がタイムアウトしたりし
              なければ、終了コードは 0 です。

       readonly [-apf] [name ...]
              指定された  name に読み込み専用の印を付けます。 それ以降は、この
              ような name の値を変更することはできません。 -f オプションを与え
              た場合、name  に対応する関数に同様の印が付きます。 -a オプション
              与えると、配列変数だけが対象となります。 name 引き数が全く与えら
              れてない場合、または -p オプションが与えられた場合、読み込み専用
              の名前全ての一覧が出力されます。 -p オプションを使うと、  入力と
              して再利用できるようなフォーマットで出力が行われます。    返却ス
              テータスは基本的に  0  ですが、   不正なオプションがあった場合、
              name  のいずれかが有効なシェル変数名で無かった場合、 -f オプショ
              ンに関数でない name を与えた場合は除きます。

       return [n]
              指定した返り値 n で関数を終了させます。  n  を省略すると、返却ス
              テータスは  関数内で最後に実行したコマンドの返却ステータスになり
              ます。 関数の外側で使われているが、 .  (source) コマンドによるス
              クリプトの実行中である場合、    シェルはそのスクリプトの実行を止
              め、 n  またはスクリプト内で最後に実行されたコマンドの終了ステー
              タスを スクリプトの終了ステータスとして返します。 関数の外側で .
              によるスクリプトの実行中以外に使われた場合、  返却ステータスは偽
              となります。

       set [--abefhkmnptuvxBCHP] [-o option] [arg ...]
              オプション無しの場合は、シェル変数全ての名前と値の組が表示されま
              す。 表示は、入力として再利用できるフォーマットで行われます。 出
              力は現在のロケールに従ってソートされます。  オプションが指定され
              ている場合、 オプションはシェルの属性を設定または解除します。 オ
              プションが処理された後に残っている引き数があれば、  これは位置パ
              ラメータの値として扱われ、 $1, $2, ...  $n  の順に代入されます。
              オプションが指定されていれば、以下の意味を持ちます:
              -a      値を変更したり新規に設定したりした変数および関数が、  自
                      動的に (後に実行するコマンドの) 環境として  エクスポート
                      されるようになります。
              -b      終了したバックグラウンドジョブのステータス報告を、  次の
                      プライマリプロンプトの前ではなく、即座に行います。  これ
                      はジョブ制御が有効な場合に限り有効です。
              -e       (前述の シェルの文法 セクションを参照) が
                      0 でないステータスで終了した場合、即座に終了します。  た
                      だし失敗したコマンドが until または while ループの一部で
                      ある、 if 文の一部である、 && または ⎪⎪ リストの一部であ
                      る、  コマンドの返り値が !  で反転されている、のいずれか
                      の場合にはシェルは終了しません。
              -f      パス名展開を無効にします。
              -h      コマンドの位置を記憶し、実行時にこれを引きます。  これは
                      デフォルトで有効になっています。
              -k      代入文の形式を持つ全ての引き数を、コマンドに対する環境に
                      追加します。  環境変数となるのは、コマンド名の前にあるも
                      のに限りません。
              -m      監視モード。ジョブ制御は有効になります。ジョブ制御 (前述
                      の ジョブ制御 セクションを参照) をサポートしているシステ
                      ム上の対話的シェルでは、  このオプションはデフォルトで有
                      効です。  別のプロセスグループで実行されたバックグラウン
                      ドプロセスと、  これらの終了ステータスが書かれた行が、プ
                      ロセスの終了時に表示されます。
              -n      コマンドを読み込みますが実行はしません。    これを使うと
                      シェルスクリプトの文法エラーをチェックできます。  このオ
                      プションは対話的シェルでは無視されます。
              -o option-name
                      option-name には、以下のいずれかを指定できます:
                      allexport
                              -a と同じです。
                      braceexpand
                              -B と同じです。
                      emacs   emacs 形式のコマンド行編集インタフェースを使いま
                              す。  これはシェルが対話的な場合には、デフォルト
                              で有効です。 ただし、 --noediting オプション付き
                              でシェルを実行した場合は除きます。
                      errexit -e と同じです。
                      hashall -h と同じです。
                      histexpand
                              -H と同じです。
                      history コマンド履歴を有効にします。コマンド履歴について
                              は  履歴  セクションで説明しています。  このオプ
                              ションは、対話的シェルではデフォルトで有効です。
                      ignoreeof
                              効果は、シェルコマンドの ``IGNOREEOF=10'' を実行
                              した場合と同様です (前述の シェル変数 を参照)。
                      keyword -k と同じです。
                      monitor -m と同じです。
                      noclobber
                              -C と同じです。
                      noexec  -n と同じです。
                      noglob  -f と同じです。
                      notify  -b と同じです。
                      nounset -u と同じです。
                      onecmd  -t と同じです。
                      physical
                              -P と同じです。
                      posix   bash の動作を変えます。 デフォルトの操作は POSIX
                              1003.2 標準と異なりますが、 これを標準に準拠する
                              ようにします (posix )。
                      privileged
                              -p と同じです。
                      verbose -v と同じです。
                      vi      vi    形式のコマンド行編集インタフェースを使いま
                              す。
                      xtrace  -x と同じです。
                      option-name 無しで -o オプションを与えた場合、現在のオプ
                      ションが出力されます。 option-name 無しで +o  オプション
                      を与えた場合、現在のオプション設定を再生成する  set コマ
                      ンドの列が標準出力に出力されます。
              -p        (privileged)  モードを有効にします。このモードでは
                      $ENV$BASH_ENV ファイルは処理されず、シェル関数は環境
                      から継承されず、 SHELLOPTS  環境変数は定義されていても無
                      視されます。  シェルを起動した時に実効ユーザ  (グループ)
                      ID が 実ユーザ (グループ) ID と異なり、 かつ -p オプショ
                      ンが与えられていない場合、    これらの動作が行われ、実効
                      ユーザ ID には実ユーザ ID が設定されます。  起動時に  -p
                      オプションが与えられた場合、  実効ユーザ ID は再設定され
                      ません。 このオプションを無効にすると、 実効ユーザ ID と
                      実効グループ ID には 実ユーザ ID と 実グループ ID が設定
                      されます。
              -t      コマンドを 1 つ読み込み、実行してから終了します。
              -u      パラメータ展開の実行中に、設定が取り消されている変数をエ
                      ラーとして扱います。  設定が取り消されている変数を展開し
                      ようとした場合、  シェルはエラーメッセージを出力します。
                      シェルが対話的でなければ、0   でないステータスで終了しま
                      す。
              -v      シェルの入力行を、読み込んだ際に表示します。
              -x      をそれぞれ展開した後、 PS4  を展開した値を
                      表示し、その後にそのコマンドと展開した引き数を表示しま
                      す。
              -B      シェルはブレース展開 (前述の ブレース展開 を参照) を実行
                      します。これはデフォルトで有効です。
              -C      設定されている場合、 bash はリダイレクト演算子 >, >&, <>
                      で既存のファイルを上書きしません。      上書きができるの
                      は、リダイレクト演算子 >|> の代わりに使った時です。
              -H      !  形式の履歴置換を有効にします。 このオプションは、シェ
                      ルが対話的な時にはデフォルトで有効です。
              -P      設定されている場合、 cd のような現在の作業ディレクトリを
                      変更するコマンドを実行する時に、  シェルはシンボリックリ
                      ンクを辿りません。  代わりに物理的ディレクトリ構造が使わ
                      れます。  デフォルトでは、 bash がカレントディレクトリを
                      変更するコマンドを実行する際には、  ディレクトリの論理的
                      な接続が辿られます。
              --      このオプションの後に引き数が続いていない場合には、  位置
                      パラメータの設定が取り消されます。      それ以外の場合に
                      は、位置パラメータに arg の残りが設定されます。 これらに
                      - で始まるものが含まれていても、  オプションではなく位置
                      パラメータとして扱われます。
              -       オプションの終わりを示します。 残りの arg は全て位置パラ
                      メータに代入されます。 -x オプションと -v オプションは無
                      効になります。  arg が無い場合には、位置パラメータの内容
                      は変化しません。

              特に断らない限り、各オプションはデフォルトで無効になっています。
              - の代わりに + を使うと、これらのオプションは無効になります。 オ
              プションはシェルを起動する際の引き数としても指定できます。  現在
              のオプションの集合は、  $- で知ることができます。 不正なオプショ
              ンが無ければ、終了ステータスは必ず真となります。

       shift [n]
              n+1 ... からの位置パラメータの名前を変え、 $1 ...  とします。 $#
              から $#-n+1 までの数字で表される パラメータは unset されます。 n
              は 0 以上 $# 以下の数でなければなりません。 n が 0  ならば、どの
              パラメータも変更されません。  n が与えられない場合には、1 が指定
              されたものと見なされます。 n$#  より大きい場合、位置パラメー
              タは変化しません。  n$# より大きい場合や 0 より小さい場合に
              は、 返却ステータスは 0 より大きい数になります。  それ以外の場合
              には 0 になります。

       shopt [-pqsu] [-o] [optname ...]
              シェルのオプション動作を制御する変数の値をトグルさせます。  オプ
              ションが無い場合や、 -p オプションが指定されている場合には、  設
              定可能なオプション全てのリストが表示されます。  表示の際には、そ
              れぞれが設定されているかどうかも示されます。 -p オプションが指定
              されていると、  オプションの表示は、入力として再利用できるフォー
              マットで行われます。  その他のオプションは、以下の意味を持ってい
              ます:
              -s     optname をそれぞれ有効にします (設定します)。
              -u     optname をそれぞれ無効にします (設定解除します)。
              -q     通常の出力を止めます   (静かなモード)。  返却ステータスは
                     optname    が設定されているかどうかを示します。    複数の
                     optname  引き数と  -q  が指定されている場合には、  全ての
                     optnames が有効である時に返却ステータスが 0  となります。
                     それ以外の時には、0 でない値となります。
              -o     optname の値を、組み込みコマンド set-o オプションで定
                     義されているものに制限します。

              引き数 optname 無しで -s オプションまたは -u  オプションを使った
              場合、表示されるものは設定されているもの、  または設定されていな
              いものにそれぞれ制限されます。 特に断らない限り、shopt  オプショ
              ンは デフォルトで無効 (設定解除) になっています。

              オプションをリスト表示した時の返却ステータスは、 全ての optnames
              が有効になっている場合は 0 となります。 それ以外の場合には 0  で
              ない値となります。  設定または設定取り消しのオプションの時には、
              optname が不正なシェルオプションでなければ、 返却ステータスは  0
              となります。

              shopt オプションのリストを以下に示します:

              cdable_vars
                      設定されている場合、組み込みコマンド cd への引き数でディ
                      レクトリでないものは変数の名前と見なされ、  その値が変更
                      先のディレクトリとなります。
              cdspell 設定されている場合、 cd コマンドのディレクトリ要素におけ
                      るスペルのちょっとした誤りは修正されます。  チェックされ
                      る誤りは、文字の入れ替わり・文字の欠け・  1 文字余分にあ
                      ることです。  訂正できた場合には、訂正後のファイル名が表
                      示され、 コマンドは続けて実行されます。 このオプションが
                      使われるのは対話的シェルだけです。
              checkhash
                      設定されている場合、 bash はハッシュ表で見つけたコマンド
                      を実行する前に  実際に存在するかどうかをチェックします。
                      ハッシュされているコマンドが既に無くなっている場合、  通
                      常のパス検索が行われます。
              checkwinsize
                      設定されている場合、bash  はコマンドの実行後に毎回ウィン
                      ドウの大きさをチェックし、 必要に応じて LINESCOLUMNS
                      の値を更新します。
              cmdhist 設定されている場合、 bash は複数行に分かれているコマンド
                      の全ての行を、 同じ履歴エントリに保存しようとします。 こ
                      れを使うと、複数行に分かれているコマンドの再編集が容易に
                      なります。
              dotglob 設定されている場合、 bash は `.'  で始まるファイル名をパ
                      ス名展開の結果に含めます。
              execfail
                      設定されている場合、  組み込みコマンド exec への引き数と
                      して指定されたファイルが実行できなくても、  対話的でない
                      シェルが終了しません。  対話的シェルは exec に失敗しても
                      終了しません。
              expand_aliases
                      設定されている場合、エイリアスが前述の  エイリアス  セク
                      ションで説明したように展開されます。      このオプション
                      は、対話的なシェルではデフォルトで有効です。
              extglob 設定されている場合、拡張されたパターンマッチング機能が有
                      効になります。  これについては、前述のパス名展開で説明し
                      ています。
              histappend
                      設定されている場合、シェルの終了時に履歴リストが変数
                      HISTFILE の値で指定しているファイルに追加されます。 ファ
                      イルへの上書きは行われなくなります。
              histreedit
                      この変数が設定されており、かつ readline が使われている場
                      合、ユーザは失敗した履歴置換を再編集できます。
              histverify
                      この変数が設定されており、かつ readline が使われている場
                      合、履歴置換の結果は即座にはシェルのパーザに渡されませ
                      ん。  その代わり、結果として得られた行は readline の編集
                      バッファに読み込まれ、さらに修正できます。
              hostcomplete
                      この変数が設定されており、かつ readline が使われている場
                      合、bash@ を含む単語を補完する時にホスト名補完を実行
                      しようとします (前述の READLINE ライブラリ  のセクション
                      における 補完 を参照)。 これはデフォルトで有効になってい
                      ます。
              huponexit
                      設定されている場合、bash  は対話的なログインシェルを終了
                      する時に、 全てのジョブに SIGHUP を送ります。
              interactive_comments
                      設定されている場合、  # で始まる単語について、その単語と
                      その行の残りの文字を  対話的シェルに無視させることができ
                      ます (前述の コメント セクションを参照)。 このオプション
                      はデフォルトで有効になっています。
              lithist 設定されており、かつ cmdhist オプションが有効ならば、 複
                      数行に分かれているコマンドは (セミコロンで区切られるので
                      はなく) できる限り途中に改行を埋め込むことで履歴に保存さ
                      れます。
              mailwarn
                      設定されており、かつ bash がメールをチェックするファイル
                      が 前回のチェック以降にアクセスされている場合、 メッセー
                      ジ  ``The  mail in mailfile has been read'' が表示されま
                      す。
              no_empty_cmd_completion
                      設定されており、かつ readline が使われている場合、  空行
                      に対してコマンド補完をさせようとしたときに、 bash は補完
                      用の PATH 検索を行いません。
              nocaseglob
                      設定されている場合、 bash はパス名展開 (前述の  パス名展
                      開 を参照) を行う時に、 ファイル名の大文字と小文字を区別
                      せずにマッチングを行います。
              nullglob
                      設定されている場合、 bash はどのファイルにもマッチしない
                      パターン (前述の パス名展開 を参照) を、その文字列自身で
                      はなく、空文字列に展開します。
              progcomp
                      設定されている場合、プログラム補完機能 (前述のプログラム
                      補完を参照)  が有効になります。 このオプションはデフォル
                      トで有効になっています。
              promptvars
                      設定されている場合、  プロンプト文字列に対して変数展開と
                      パラメータ展開が行われます。 この展開は前述の プロンプト
                      セクションで説明した展開が行われた後に行われます。  この
                      オプションはデフォルトで有効になっています。
              restricted_shell
                      シェルが制限モードで起動された場合、  このオプションが設
                      定されます (後述の 制限付きのシェル  セクションを参照)。
                      この値を変更することはできません。  これは起動ファイルが
                      実行される時にもリセットされないので、  シェルが制限付き
                      かどうかを起動ファイル内部で知ることができます。
              shift_verbose
                      設定されている場合、組み込みコマンド  shift においてシフ
                      トの回数が位置パラメータの数を超えると、  エラーメッセー
                      ジが出力されます。
              sourcepath
                      設定されている場合、組み込みコマンド  source (.) は PATH
                      の値を使って、引き数として与えられたファイルを含むディレ
                      クトリを見つけます。  このオプションはデフォルトで有効で
                      す。
              xpg_echo
                      設定されている場合、 組み込みコマンド echo は デフォルト
                      でバックスラッシュによるエスケープシーケンスを展開しま
                      す。
       suspend [-f]
              SIGCONT シグナルを受け取るまで、シェルの実行をサスペンドします。
              -f  オプションを与えた場合、シェルがログインシェルであっても警告
              を出しません。 ただし、どちらにせよサスペンドはします。 シェルが
              ログインシェルかつ -f が与えられていない場合と、ジョブ制御が有効
              でない場合とを除いて、 返却ステータスは 0 です。
       test expr
       [ expr ]
              条件式 expr を評価した結果に基づいて、ステータス 0 または 1 を返
              します。  演算子とオペランドそれぞれは別々の引き数でなければなり
              ません。 式は前述の 条件式  セクションで説明したプライマリで構成
              されます。

              式は次に示す演算子を使って結合できます。  優先度の高い順に示しま
              す。
              ! expr expr が偽ならば真になります。
              ( expr )
                     expr の値を返します。  これを使うと、通常の演算子の優先度
                     を変更できます。
              expr1 -a expr2
                     expr1expr2 が両方とも真ならば真になります。
              expr1 -o expr2
                     expr1expr2 のいずれかが真ならば真になります。

              test  および [ は、 引き数の数に基づいた規則の集合を用いて条件式
              を評価します。

              引き数が 0 個
                     この式は偽です。
              引き数が 1 個
                     引き数が空でない場合に限り真になります。
              引き数が 2 個
                     最初の引き数が ! ならば、 2  番目の引き数が空の場合に限り
                     真になります。 最初の引き数が、既に 条件式 セクションで説
                     明した単項条件演算子のいずれかであれば、 単項の評価が真の
                     場合に式は真となります。 最初の引き数が正しい単項条件演算
                     子でなければ、式は偽となります。
              引き数が 3 個
                     2 番目の引き数が、既に 条件式  セクションで説明した二値条
                     件演算子のいずれかであれば、  最初と 3 番目の引き数をオペ
                     ランドとして使った   二値評価の結果が式の結果となります。
                     最初の引き数が  ! であれば、2 番目と 3 番目の引き数を使っ
                     た、  引き数  2  つの評価の結果を否定したものが値となりま
                     す。 最初の引き数が ( であり、3 番目の引き数が ) ならば、
                     2 番目の引き数を使って引き数 1 つの評価を行った値が結果と
                     なります。  これら以外の場合には、式は偽となります。 この
                     場合においては、-a-o は二値演算子として扱われます。
              引き数が 4 個
                     最初の引き数が ! ならば、 残りの引き数で作った引き数 3 つ
                     の式の値を否定したものが結果となります。 それ以外の場合に
                     は、先に挙げた規則を使った優先度に従って 式が展開・評価さ
                     れます。
              引き数が 5 個以上
                     先に挙げた規則を使った優先度に従って式が展開・評価されま
                     す。

       times  シェルとシェルから実行したプロセスについて、  ユーザ時間とシステ
              ム時間を加えたものを出力します。 返却ステータスは 0 です。

       trap [-lp] [arg] [sigspec ...]
              シェルがシグナル sigspec を受け取ると、コマンド arg が読み込まれ
              て、実行されます。 arg が存在しないか、 - である場合、  指定され
              ているシグナルは全て最初の値  (シェルの起動時に設定されていた値)
              にリセットされます。    arg     が空文字列である場合、それぞれの
              sigspec  で指定されているシグナルは、 シェルとシェルが起動したコ
              マンドから無視されます。 arg なしで -p  オプションが与えられた場
              合、  各 sigspec に対応する trap コマンドが表示されます。 引き数
              が全く無いか、 -p だけが与えられた場合、 trap は各シグナル番号に
              対応するコマンドのリストを出力します。     それぞれの    sigspec
              は、<signal.h>    で定義されているシグナル名またはシグナル番号で
              す。  sigspecEXIT (0) であれば、シェルの終了時にコマンド arg
              が実行されます。 sigspecDEBUG であれば、 (前述
              の  シェルの文法 セクションを参照) が終わるたびにコマンド arg が
              実行されます。 -l オプションを与えると、  シェルはシグナル名とこ
              れに対応する番号のリストを出力します。  シェルのエントリで無視さ
              れるシグナルは、 トラップもリセットもできません。 トラップされた
              シグナルはリセットされ、  子プロセスが生成された時の最初の値に戻
              ります。 sigspec  のいずれかが不正であれば、返却ステータスは偽に
              なります。 それ以外の場合には、 trap は真を返します。

       type [-atp] name [name ...]
              オプション無しの場合には、各  name  をコマンド名として使ったとき
              に、それがどのように解釈されるかを示します。 -t オプションを使う
              と、  name が、エイリアス・シェルの予約語・関数・ 組み込みコマン
              ド・ディスク上のファイルのいずれかの場合、 type はそれぞれに応じ
              て  alias, keyword, function, builtin, file という文字列を出力し
              ます。 name が見つからない場合は何も出力されず、偽の終了ステータ
              スが返されます。 -p オプションを使うと、 typename をコマンド
              名として指定した場合に実行されるディスクファイルの名前、  または
              空文字列を返します。  空文字列が返されるのは、  ``type -t name''
              が file を返さない場合です。  コマンドがハッシュされている場合、
              -p はハッシュされている値を表示します。 表示されるのは、必ずしも
              PATH 中で最初に現われるファイルとは限りません。 -a  オプションを
              使うと、 typename が示す実行ファイルがある場所を全て出力しま
              す。 -p オプションが同時に使われていない場合に限り、  エイリアス
              や関数も出力されます。 -a を使う時には、ハッシュされているコマン
              ドの表は参照されません。 type は、引き数のいずれかが見つかれば真
              を返し、 どれも見つからなければ偽を返します。

       ulimit [-SHacdflmnpstuv [limit]]
              これを使うと、シェルおよびシェルが起動するプロセスが  利用できる
              リソースを制御できます。  ただし、このような制御ができるシステム
              の場合に限ります。  limit の値はリソースに対して指定されている単
              位の数、または unlimited です。 -H  オプションと  -S  オプション
              は、  それぞれ与えられたリソースに対する  強い (hard) 制限と弱い
              (soft) 制限を設定します。 強い制限は一度設定すると増やせません。
              弱い制限は強い制限の値までは増やせます。 -H-S がどちらも指定
              されていない場合、    強い制限と弱い制限がどちらも設定されます。
              limit   を省略すると、リソースの弱い制限の現在値が表示されます。
              ただし、-H が与えられている場合は除きます。 複数のリソースが指定
              されている時は、制限名と単位が値の前に出力されます。    他のオプ
              ションは以下のように解釈されます:
              -a     現在の制限を全て報告する
              -c     生成されるコアファイル (core) の最大サイズ
              -d     プロセスのデータセグメントの最大サイズ
              -f     シェルが生成できるファイルの最大サイズ
              -l     メモリにロックできる最大サイズ
              -m     常駐セットサイズの最大値
              -n     オープンできるファイル・ディスクリプターの最大数  (ほとん
                     どのシステムでは、この値を設定することはできません)
              -p     512  バイトブロック単位でのパイプのサイズ (これは設定でき
                     ないかもしれません)
              -s     最大スタックサイズ
              -t     CPU 時間の最大量 (秒単位)
              -u     1 人のユーザが使用できる最大のプロセス数
              -v     シェルが使用できる最大の仮想メモリ量

              limit が与えられている場合、これは指定されたリソースの新しい値と
              なります  (-a は表示専用です)。 オプションが全く与えられなかった
              場合は、 -f が指定されたものと見なされます。 値は 1024  バイト単
              位で増えますが、例外として -t は秒単位、 -p 512 バイトブロック単
              位、 -n および -u は単位無しの値です。  返却ステータスは基本的に
              0 ですが、 不正なオプションがある場合、 unlimited 以外の数字でな
              い引き数が limit  に指定された場合、  新しい制限を設定する際にエ
              ラーが起きた場合は除きます。

       umask [-p] [-S] [mode]
              ユーザのファイル生成マスクに mode を設定します。 mode が数字で始
              まる場合には、これは  10  進数と解釈されます。  それ以外の場合に
              は、 chmod(1) に指定するのと同様のシンボリックなモードマスクと解
              釈されます。  mode  が省略されると、現在のマスクの値が出力されま
              す。 -S オプションを指定すると、マスクはシンボリックな形式で表示
              されます。 デフルトの出力は 10 進の数値です。 -p  オプションが指
              定され、かつ mode が省略された場合、入力として再利用できる形式で
              出力が行われます。 モードが正常に変更できた場合や、 mode  引き数
              が全く与えられなかった場合には、 返却ステータスは 0 となります。
              それ以外の場合には偽となります。

       unalias [-a] [name ...]
              name を定義されているエイリアスのリストから削除します。 -a  が与
              えられている場合には、エイリアス定義は全て削除されます。  与えら
              れた name が定義されているエイリアスであれば、返却ステータスは真
              になります。

       unset [-fv] [name ...]
              name それぞれについて、対応する変数や関数を削除します。 オプショ
              ンが全く与えられていない場合や、  -v  オプションが与えられた場合
              は、各  name はシェル変数を参照します。 読み込み専用の変数の設定
              を消すことはできません。 -f が指定されている場合、各 name はシェ
              ル関数を参照し、その関数の定義が削除されます。  設定が消された変
              数や関数は全て、  それ以降のコマンドに渡される環境変数からも削除
              されます。  RANDOM,  SECONDS, LINENO, HISTCMD, FUNCNAME, GROUPS,
              DIRSTACK  のいずれかの設定を消した場合、これらの特殊な特性も無く
              なります。 これは後で再設定しても元に戻ることはありません。 name
              が存在しないか、読み込み専用の場合以外には、  終了ステータスは真
              となります。

       wait [n]
              指定されたプロセスを  wait  し、その終了ステータスを返します。 n
              はプロセス ID またはジョブ指定です。  ジョブ指定を与えた場合、そ
              のジョブのパイプラインに含まれる  全てのプロセスを wait します。
              n が与えられていない場合には、現在アクティブな全ての子プロセスを
              wait し、 返却ステータスは 0 となります。 n が存在しないプロセス
              やジョブを指定している場合、 返却ステータスは  127  になります。
              それ以外の場合、返却ステータスは wait していた最後のプロセスまた
              はジョブの終了ステータスとなります。

制限付きのシェル(RESTRICTED SHELL)
       bashrbash という名前で起動した場合や、起動時に -r  オプションを指定
       した場合には、シェルは制限された状態になります。   制限付きのシェルは、
       標準のシェルよりも細かく制御された環境を設定したいときに用います。 制限
       付きのシェルは bash と全く同じように動作しますが、 以下のようなことが許
       可されなかったり実行されなかったりします:

       ·      cd を使ってディレクトリを変更すること

       ·      SHELL, PATH, ENV, BASH_ENV の値の設定や設定取り消しを行なうこと

       ·      / を含むコマンド名を指定すること

       ·      組み込みコマンド .  の引き数として /  を含むファイル名を指定する
              こと

       ·      組み込みコマンド  hash に対するオプション -p の引数として / を含
              むファイル名を指定すること

       ·      起動時にシェル環境から関数定義をインポートすること

       ·      起動時にシェル環境から SHELLOPTS の値を展開すること

       ·      リダイレクション演算子 >, >|, <>, >&, &>, >>  を使ってリダイレク
              トを行 なうこと

       ·      組み込みコマンド exec を用いて、シェルを別のコマンドに置き換える
              こと

       ·      組み込みコマンド enable に対する -f オプションと -d オプションを
              使って、組み込みコマンドを追加・削除すること

       ·      組み込みコマンド command-p オプションを指定すること

       ·      set +rset +o restricted を用いて制限モードを解除すること

       これらの制限は、何らかの起動ファイルを読み込んだ後に適用されます。

       シェルスクリプトであると判明したファイルが実行された時 (前述の コマンド
       の実行 を参照) には、 rbash  はスクリプト実行用に立ち上げたシェルでは制
       限を全て無効にします。

関連項目
       Bash Reference Manual, Brian Fox and Chet Ramey
       The Gnu Readline Library, Brian Fox and Chet Ramey
       The Gnu History Library, Brian Fox and Chet Ramey
       Portable   Operating   System  Interface  (POSIX)  Part  2:  Shell  and
       Utilities, IEEE
       sh(1), ksh(1), csh(1)
       emacs(1), vi(1)
       readline(3)

ファイル
       /bin/bash
              bash の実行ファイル。
       /etc/profile
              システム全体用の初期化ファイル。ログインシェルが実行します。
       ~/.bash_profile
              個人用の初期化ファイル。ログインシェルが実行します。
       ~/.bashrc
              対話シェルごとに実行される、個人用の起動ファイル。
       ~/.bash_logout
              個人用のログインシェル後処理ファイル。  ログインシェルの終了時に
              実行されます。
       ~/.inputrc
              個人用の readline 初期化ファイル。

著者
       Brian Fox, Free Software Foundation
       bfox@gnu.org

       Chet Ramey, Case Western Reserve University
       chet@ins.CWRU.Edu

バグ報告
       bash  のバグを見つけたら必ず報告してください。 ただし報告の前には、それ
       が本当にバグであることと、 バグが最新版の bash で起こることを確かめてく
       ださい。

       本当にバグがあると判断した場合には、 bashbug コマンドを使ってバグ報告を
       行います。 バグを修正してくださった場合には、  ぜひその内容も一緒にメー
       ルしてください!   提案や「哲学上の」バグ報告は、bug-bash@gnu.org にメー
       ルしたり、 ニュースグループの gnu.bash.bug に投稿してくださっても構いま
       せん。

       バグ報告には必ず以下のことを書いてください:

       bash のバージョン
       ハードウェアとオペレーティングシステム
       コンパイルに使ったコンパイラ
       バグ動作の説明
       バグを再現できる簡単なシェルスクリプトまたは「レシピ」

       bashbug  コマンドは、バグ報告を送るために用意されているテンプレートに、
       最初の 3 項目を自動的に書き込みます。

       このオンラインマニュアルに関するコメントやバグ報告は  chet@ins.CWRU.Edu
       宛にお願いします。

バグ
       bash は大きすぎるし、遅すぎます。

       bash  と昔ながらのバージョンの  sh にはちょっとした違いがいくつかありま
       す。この大部分は POSIX の仕様のせいで生じたものです。

       使い方によっては、エイリアスは混乱の元になります。

       シェル組み込みコマンドとシェル関数は停止・再実行できません。

       複合コマンドや `a ; b ; c' の形式のコマンド列は、  プロセスのサスペンド
       を行う際に綺麗に扱うことができません。  プロセスを停止すると、 シェルは
       コマンド列の次のコマンドを即座に実行するからです。 この問題はコマンド列
       を括弧の中に置いて  サブシェルに実行させることで解決できます。 こうすれ
       ば、ひとまとまりのものとして停止できます。

       $(...)  を使ったコマンド置換の内部にあるコマンドは、 置換が実行される時
       まで展開されません。   これにより、コマンドを入力してしばらく経つまでエ
       ラー出力が遅れます。

       配列変数は (まだ) エクスポートできません。