FD(1) UNIX-OS Programmer's Manual FD(1) 名称 fd - ファイル・ディレクトリ管理ツール 形式 fd [ -abCefhiklmNnPrSsTtuvx ] [ -NAME=value ] [ directory [ directory2 ... ]] fdsh [ -abCcefhiklmNnPrSsTtuvx ] [ args ] 解説 fd は、UNIX 汎用のテキスト端末用に考えられた、ファイルやディ レクトリの管理ツールです。PC/AT 互換機と PC-98x1 専用に作ら れている同名ユーティリティのクローンを目指しています。実際、 機能的には上位互換となっています。 fd を起動すると、ファイル一覧のブラウザ画面になりますので、 各コマンドを割当ててある各種キーの入力により、様々な機能を実 行することができます。 (以下の記述で (UNIX) とある機能については、UNIX 版のみの実装 で、MS-DOS 版では機能しません。同様に (DOS) とある機能につい ては MS-DOS 版のみの実装です。) オプション コマンドラインオプションは、内蔵シェル用の機能設定と、後述の 内部変数の設定に使用します。内部変数には任意の変数名が使用で きますが、fd が解釈するものは後述の環境変数の項目で挙げられ ているものに限ります。directory を指定すると、起動直後にカレ ントディレクトリをそのディレクトリに移動します。directory2 ... を指定すると、ウィンドウ分割モードで起動し、追加ウィンド ウ側のカレントディレクトリをそれぞれのディレクトリに移動しま す。 内蔵シェル用に使えるオプションには下記のものがあります。 -c string string で示されるコマンドを実行し、終了します。fdsh と して起動された時のみ有効です。 -i -i を指定するか、もしくは標準入出力が端末である場合には、 シェルが対話型シェルになります。 -s -s を指定するか、もしくは args を指定しない場合は、シェ ルのコマンド入力を標準入力から読込みます。以降の引数は 位置パラメータとなります。 -r シェルの機能が一部制限されます。具体的には以下の動作が 禁止されます。 カレントディレクトリの移動 $PATH, $SHELL 及び $ENV の設定変更 / を含むコマンドの実行 出力のリダイレクト(> 及び >>) IN_DIR OUT_DIR LOG_TOP LOG_DIR ATTR_FILE COPY_FILE MOVE_FILE DELETE_FILE DELETE_DIR RENAME_FILE MAKE_DIR WRITE_DIR TREE_DIR BACKUP_TAPE EDIT_FILE UNPACK_FILE PACK_FILE LOG_TREE COPY_TREE MOVE_TREE UNPACK_TREE FIND_DIR ATTR_DIR rfd または rfdsh として起動された場合には、自動的にこの 一部制限シェルになります。 -l ログインシェルとして起動します。 -N 起動時に初期設定ファイルの読込みを省略します。 この他、後述の組込みコマンド set で述べられているオプション が有効です。 画面レイアウト fd の画面モードは、大きく 3 つのモードに分けられます。ブラウ ザ画面では、ファイルの一覧リストの中をブラウジングして、各コ マンドを実行していきます。アーカイブブラウザ画面では、アーカ イブファイル内のファイルを、ディレクトリ階層別に一覧表示し、 ブラウザ画面と同様にブラウジングします。ツリー表示画面では、 ディレクトリの階層構造がツリー表示された中を、移動してディレ クトリパスを選択します。 どの画面モードでも、画面全体の上下各 3 行ずつは、fd の様々な 情報を表示するために用いられます。画面上端情報については、4 行の場合もあります。その画面レイアウトは、おおよそ次のように なっています。 行数 意味 1 タイトル行。右端の時計は 10 秒毎に更新されます。 2 インフォメーション行。表示ページ (及び全ページ数)、 マーク数 (及び全ファイル数)、ソート形式、ファイル 検索文字列の順で情報が書かれます。 3 パス行。カレントディレクトリのフルパスが表示されま す。また、アーカイブブラウザ画面では、アーカイブフ ァイルのフルパスと、アーカイブ内パスが表示されます。 2 (随意) ファイルサイズ情報行。ディレクトリ内のマークファイ ルのトータルサイズ (及び全ファイルのトータルサイズ )、カレントディレクトリのあるファイルシステムの総 容量、及び空き容量が表示されます。後述の内部変数 SIZEINFO の設定を事前に行なっておくことによりこの 行が表示されます。この行が表示されている場合、イン フォメーション行とパス行はそれぞれ 1 行ずつ繰り下 げて表示されます。 最下 - 2 スタック行。ファイルの並び替えを行なう際、一時的に スタックに積んだファイルがここに表示されます。 最下 - 1 ファンクション行。ファンクションキーの機能が表示さ れます。 最下 ステータス行。カーソル位置のファイルに関するステー タスが表示されます。また、コマンド実行の上で何らか の支障が生じた場合のウォーニングメッセージもここに 表示されます。 内部コマンド fd では以下の各内部コマンドが使用できます。これらの内部コマ ンドのキー割当てはユーザにより変更可能ですが、ここではデフォ ルトのキー割当てを添えます。識別子は、EXECUTE_SH コマンド内 でコマンドラインから実行する場合や、キー割当てをユーザ定義す る場合に用います。 識別子 意味 キー CUR_UP カーソルを上に移動 ↑ CUR_DOWN カーソルを下に移動 ↓ CUR_RIGHT カーソルを右に移動 → CUR_LEFT カーソルを左に移動 ← ROLL_UP 次の表示ページに切替え PageDown ROLL_DOWN 前の表示ページに切替え PageUp CUR_TOP カーソルを先頭に移動 Beg(<) CUR_BOTTOM カーソルを最後尾に移動 Eol(>) FNAME_RIGHT ファイル名表示範囲を右シフト ( FNAME_LEFT ファイル名表示範囲を左シフト ) ONE_COLUMN 画面表示を 1 列にする 1 TWO_COLUMNS 画面表示を 2 列にする 2 THREE_COLUMNS 画面表示を 3 列にする 3 FIVE_COLUMNS 画面表示を 5 列にする 5 MARK_FILE ファイルのマーク Tab MARK_FILE2 ファイルのマークと下移動 Space MARK_FILE3 ファイルのマークと画面内移動 ^Space(^@) MARK_ALL 全ファイルにマーク Home(+) MARK_REVERSE 全ファイルをマーク反転 End(-) MARK_FIND 検索したファイルにマーク * IN_DIR サブディレクトリに移動 Return OUT_DIR 親ディレクトリに移動 Bs LOG_TOP ルートディレクトリに移動 \ REREAD_DIR 表示画面の再描画 ^L PUSH_FILE ファイルをスタックに積む Del(]) POP_FILE ファイルをスタックから取出す Ins([) LOG_DIR ディレクトリの絶対移動 F1(l) EXECUTE_FILE ファイルの実行 F2(x) COPY_FILE ファイルのコピー F3(c) DELETE_FILE ファイルの削除 F4(d) RENAME_FILE ファイル名の変更 F5(r) SORT_DIR ファイルのソート F6(s) FIND_FILE ファイルの検索 F7(f) TREE_DIR ディレクトリのツリー表示 F8(t) EDIT_FILE ファイルの編集 F9(e) UNPACK_FILE アーカイブファイルの伸長 F10(u) ATTR_FILE ファイル属性の変更 F11(a) INFO_FILESYS ファイルシステムの情報表示 F12(i) MOVE_FILE ファイルの移動 F13(m) DELETE_DIR ディレクトリの削除 F14(D) MAKE_DIR ディレクトリの作成 F15(k) EXECUTE_SH 子プロセスの実行 F16(h) WRITE_DIR 表示ディレクトリの書込み F17(w) BACKUP_TAPE テープへのバックアップ F18(b) VIEW_FILE ファイルの閲覧 F19(v) PACK_FILE ファイルの圧縮 F20(p) LOG_TREE ツリー選択でディレクトリ移動 L COPY_TREE ツリー選択でファイルコピー C MOVE_TREE ツリー選択でファイル移動 M UNPACK_TREE ツリー選択でファイル伸長 U FIND_DIR ディレクトリの検索移動 F ATTR_DIR 再帰的なファイル属性変更 A SYMLINK_MODE symbolic リンク表示形式の切替 S FILETYPE_MODE ファイルタイプシンボルの切替 T DOTFILE_MODE ドットファイル非表示の切替 H FILEFLG_MODE ファイルフラグ表示の切替 O LAUNCH_FILE ランチャの起動 Return SEARCH_FORW ファイル名の前方検索 ^S SEARCH_BACK ファイル名の後方検索 ^R SPLIT_WINDOW ウィンドウの分割 / NEXT_WINDOW ウィンドウ間の移動 ^ WIDEN_WINDOW ウィンドウの拡張 W NARROW_WINDOW ウィンドウの縮小 N KILL_WINDOW ウィンドウの破棄 K EDIT_CONFIG カスタマイザの起動 E HELP_MESSAGE ヘルプ画面の表示 ? QUIT_SYSTEM fd の終了 Esc(q) WARNING_BELL ベルを鳴らします NO_OPERATION 何もしません 最後の 2 つの内部コマンドは、キー割当てを変更してデフォルト で割当てられた機能を殺したい時に使います。 内部コマンド解説 各内部コマンドの詳細を以下で説明します。同様な機能を持つ内部 コマンドは、幾つかまとめて説明しています。 カーソル移動 カーソルを移動します。 表示ページ切替え 表示が一画面に収まらなかった場合に、前後のページに移 動します。カーソル移動でページの外に移動しようとした 場合にも、ページ切替えになります。 先頭, 最後尾への移動 カーソルをファイル一覧の先頭及び最後尾に移動します。 表示が一画面に収まらない場合は、ページの切替えも行な われます。 ファイル名表示範囲の変更 ファイル名表示が規定のカラム内に収まらなかった場合、 カーソル位置のファイル名のみ、表示される部分を変更し ていくことができます。それぞれ、一文字ずつ右と左にシ フトさせて表示します。ステータス行の表示も同時にシフ トされます。 画面表示列の変更 通常は一画面 2 列の表示になっていますが、この列の数 をそれぞれの値に変更します。列の数により、1 ファイル 当たりのカラム数が変わるので、表示されているファイル 情報も変化します。 ファイルのマーク カーソル位置のファイルにマークをします。ディレクトリ にはマークできません。[Space] の場合にはマークと同時 にカーソルを下移動します。[^Space] の場合にも下移動 しますがページ切替えはしません。また、[Home] で全フ ァイルにマークを、[End] で全ファイルのマークを反転し ます。[*] では、ワイルドカードにマッチしたファイルに マークを追加します。ワイルドカード文字列は [*] を押 した後でその都度入力します。 マークしたファイルは、ATTR_FILE, COPY_FILE, DELETE_FILE, MOVE_FILE, UNPACK_FILE 及びユーザ定義の コマンドマクロ実行の際に対象となります。 カレントディレクトリの移動 移動したいサブディレクトリのところにカーソルを移動し、 [Return] を押すと、そのディレクトリに移動します。親 ディレクトリへは、".." のファイルにカーソル移動して [Return] を押すか、もしくは [Bs] を押すことで移動で きます。また、[\] でルートディレクトリへの絶対移動を 行ないます。 ファイルスタックへの積み下ろし [Del] を押すと、そのカーソル位置のファイルが一旦スタ ックに積まれ、ファイル一覧の画面から一時的に削除され ます。スタックには 5 ファイルまで積むことができます。 スタックに積まれたファイルは、[Ins] でそのカーソル位 置に挿入することができます。最後にスタックに積んだフ ァイルから順に取り出されます。但し、この並びは fd の 中で便宜上そう見えているだけで、ディレクトリの移動等 を行なえば元の並びに戻ります。 表示画面の再描画 カレントディレクトリの情報を再度読み出し、ファイル一 覧の画面を再描画します。起動中に他のプロセスからファ イルの追加削除を行なった場合や、何らかの理由により画 面表示が乱れた場合などに有効です。 また、画面サイズの変更に際して SIGWINCH シグナルを発 生しないような端末の場合 (HP-UXの kterm(1) など) は、 画面サイズを変更した後には明示的に再描画させる必要が あります。 ディレクトリの絶対移動 (Logdir) 入力したパス名に、カレントディレクトリを移動します。 '/' で始まるパス名を入力すれば、相対移動でなく絶対移 動になります。 パス名として "." を入力すると、カレントディレクトリ のパス名を絶対表記に改めます。これ以外の移動では、リ ンク等の原因により、カレントディレクトリは常に仮想的 なパス名を示します。また、"?" というパス名を入力する と、fd を起動した直前のカレントディレクトリに移動で きます。"-" というパス名を入力すると、最後に訪れたデ ィレクトリに移動できます。 また、フロッピードライブに移動している時に "@" とい うパス名を入力すると、フロッピードライブに移動する前 の UNIX ファイルシステム側のディレクトリに移動できま す。(UNIX) ファイルの実行 (eXec) カーソル位置のファイル名に、パラメータを追加して子プ ロセスとして実行します。編集ラインのカーソル位置は、 実行権のあるファイルではファイル名の後に、それ以外の ファイルではファイル名の前に来ます。それぞれ、適当な パラメータやコマンド名を補って下さい。また、カーソル キーの上下で過去に実行したコマンド履歴の参照もできま す。 MS-DOS 版では、編集ライン中で引用符 " で括られた LFN 形式のファイル名は、自動的に 8+3 形式のファイル名に 置き換えられてから実行されます。この時、" で括られた 文字列で表されるファイル名が存在する時には全て、" を 削除した上で 8+3 形式のファイル名に変換しますが、そ のファイル名が存在しない場合は、" を含めて変換を行な いません。 ファイルのコピー (Copy) カーソル位置のファイルを指定のディレクトリにコピーし ます。カーソル位置がディレクトリだった場合には、ディ レクトリの中を再帰的にコピーできます。マークされたフ ァイルがある場合は、カーソル位置のファイルではなくマ ークファイルが対象となります。 また、コピー先に同名ファイルが存在した場合、「日付の 新しいファイルを上書き」「名前を変えてコピー」「全て 上書き」「同名ファイルはコピーしない」「転送」の中か ら処理を選択できます。「転送」を選択すると転送先のデ ィレクトリを聞いてきますので指定して下さい。コピー先 の同名ファイルは全てここで指定したディレクトリに移動 します。 ファイルの削除 (Delete) カーソル位置のファイルを削除します。ディレクトリは削 除できません。マークされたファイルがある場合は、カー ソル位置のファイルではなくマークファイルが対象となり ます。 書込み権のないファイルの場合には、安全のため確認を取 ります。 ファイル名の変更 (Rename) カーソル位置のファイルのファイル名を変更します。既に 存在するファイルと同じ名前には変更できません。また、 新しいファイル名としてディレクトリ付きのパス名を指定 すると、ファイル移動も同時に行なわれることになります。 ファイルのソート (Sort) カレントディレクトリ内のファイルをソートして表示しま す。ソートのタイプは「名前順」「拡張子順」「サイズ順」 「日付順」「長さ順」の中から選び、更に「昇べき」「降 べき」を指定します。ソート前のソートタイプが「ソート しない」以外だった時は、選択肢の中に「ソートしない」 も含まれるようになります。また、一度ソートした後に別 のタイプでソートすると、以前のソート結果を基準にして ソートし直します。なお、このソートには指定したタイプ 以外に優先順位があり、「ソートしない」以外のソートタ イプでは、ディレクトリファイルは通常ファイルよりも常 に先んじて並べられます。また、「長さ順」ではファイル 名長が同じもの同士は名前順で並べます。 但し、このソートは fd の中で便宜上そう見えているだけ で、ディレクトリの移動等を行なえば元の並びに戻ります。 ファイルの検索 (Find) ワイルドカードにマッチしたファイルだけを画面に表示す るようにします。先頭が '.' で始まるファイル名は、'*' や '?' で始まるワイルドカードにマッチしません。検索 表示を解除したい場合は、ディレクトリを移動するか、再 度 FIND_FILE を実行して空行を入力して下さい。 また、カレントディレクトリに、アーカイブブラウザの登 録されている拡張子のファイルが存在した場合、検索文字 列の先頭を '/' で始めると、ファイル名そのものの検索 ではなく、アーカイブファイル内のファイル名を検索し、 マッチしたファイルを持つアーカイブファイルのみ画面に 表示します。この機能はアーカイブブラウザ内でも利用で きます。 なお、検索表示中は WRITE_DIR は実行できません。 ディレクトリのツリー表示 (Tree) カレントディレクトリを基準としたツリー構造を表示しま す。ツリー表示モード内で移動したい先のディレクトリを 選択すると、カレントディレクトリを移動します。 ファイルの編集 (Editor) カーソル位置のファイルを編集します。編集に用いるエデ ィタは、内部変数 EDITOR を参照して用いますが、内部変 数が未定義の場合には環境変数 EDITOR を参照します。 アーカイブファイルの伸長 (Unpack) カーソル位置のアーカイブファイルを指定ディレクトリ先 に伸長します。デフォルトでは、tar ファイルとその圧縮 ファイル及び LHa 圧縮ファイルしか伸長できませんが、 初期設定ファイルに記述することで、これ以外のアーカイ バにも対応できるようになります。 ファイル属性の変更 (Attr) カーソル位置のファイルの、ファイルアクセスモードとタ イムスタンプ及びオーナーとグループを変更します。マー クされたファイルがある場合は、カーソル位置のファイル ではなくマークファイルが対象となります。マークファイ ルの場合は、モード、タイムスタンプ、オーナーとグルー プのいずれかを選んでから、入力したものを一括変更する ことになります。 モードの入力は、カーソルキーで変更したい位置へカーソ ルを移動し、[Space] でその位置の属性を反転させます。 実行ビットの属性は、2 値のトグルではなく、それぞれ setuid ビット、setgid ビット、sticky ビットを含んだ 3 値のトグルになっていますので注意して下さい。また、 対象がマークファイルの場合は、[m](Mask) を入力すると その位置のビット値は '*' でマスクされ、元のファイル の属性値を保存します。タイムスタンプの入力は、変更し たい位置にカーソルを持っていって、数値を入力するだけ です。オーナーとグループの入力は、それぞれの名前の位 置にカーソルを移動し、[Space] で名前または ID 値の入 力を行ないます。名前の入力にはユーザ名補完やグループ 名補完が有効です。最終的に、[Return] を押した時点で 実行されます。中断する場合は [Esc] です。日付の範囲 チェックは完全ではありませんので気をつけて下さい。 なお、[a](Attr), [d](Date), [t](Time), [o](Owner), [g](Group) を入力すると、各々の入力ラインの先頭位置 にカーソル移動します。 また、ファイルフラグ属性のある OS では、モードの変更 と同様にファイルフラグも変更できます。この場合、[f] (Flag) を入力するとフラグ入力ラインの先頭位置にカー ソル移動します。但し、変更できるフラグの値は実効ユー ザの権限に準じます。 ファイルシステムの情報表示 (Info) 指定されたファイルシステムの情報を表示します。入力さ れたパスがファイルシステムを表すスペシャルファイルで なかった場合は、そのパスを含むファイルシステムの情報 を示します。 ファイルの移動 (Move) カーソル位置のファイルを指定のディレクトリに移動しま す。カーソル位置がディレクトリだった場合には、ディレ クトリそのものを移動します。マークされたファイルがあ る場合は、カーソル位置のファイルではなくマークファイ ルが対象となります。 移動先に同名ファイルが存在した場合、COPY_FILE 同様、 処理の選択ができます。また、移動先が異なるファイルシ ステムの場合は、単にコピーと削除を連続して実行します。 ディレクトリの削除 (rmDir) カーソル位置のディレクトリファイルを、再帰的に削除し ます。但し、ディレクトリが symbolic リンクの場合には、 リンクの削除のみ行ない、リンク先のディレクトリには影 響を与えません。 ディレクトリの作成 (mKdir) カレントディレクトリの下にサブディレクトリを作成しま す。入力したサブディレクトリ文字列に、パス名デリミタ である '/' が含まれていた場合、最終的にその文字列で 示されるディレクトリが作成されるまで、再帰的にディレ クトリ作成を繰り返します。 '/' で始まるパス名を入力すれば、カレントディレクトリ 下でなく、表される絶対パスにディレクトリを作成します。 子プロセスの実行 (sHell) 入力されたコマンド文字列を内蔵シェルに渡して子プロセ スとして実行させます。EXECUTE_FILE と同様にコマンド 履歴の参照や MS-DOS 版での LFN 自動変換もできます。 また、何も入力せずに [Return] のみ入力すると、内部変 数もしくは環境変数 SHELL の指すユーザシェルを起動し ます。この場合、fd に戻るためには "exit" と入力して 下さい。また、SHELL の値が fdsh の場合には、内蔵シェ ルを対話型シェルとして起動します。 但し、組込みコマンド及び内部コマンドに同じコマンド名 があった場合、外部コマンドに優先して組込みコマンド及 び内部コマンドが実行されます。組込みコマンドの詳細は、 `組込みコマンド' の項を参照して下さい。 表示ディレクトリの書込み (Write) 現在表示されているディレクトリの書込みをします。ディ レクトリエントリ上のファイル間の隙間も詰めて書込まれ ます。PUSH_FILE, POP_FILE や SORT_DIR で並び替えた後 であれば、その結果を書込むことになります。 表示ディレクトリがホームディレクトリ下の階層に属して いなかった場合、安全のため、他のユーザが利用していな いかどうかの確認を求めます。セキュリティ上不安定なの で、NFS マウントされたディレクトリや一部の特殊ディレ クトリ上では書込みできません。 また、ファイルの並び替えをするような内部コマンド実行 後に、その並びを崩してしまう内部コマンドを実行しよう とすると、その内部コマンド実行の直前に、書込みを行な うかどうかを問い合わせしてきます。この機能のため、明 示的にこの書込みコマンドを実行しなくてもディレクトリ の書込みを行なうことがあります。但し、表示ディレクト リがホームディレクトリ下になかった場合は、この問い合 わせを行ないません。 テープへのバックアップ (Backup) カーソル位置のファイルを指定デバイスの記録装置にバッ クアップします。カーソル位置がディレクトリだった場合 には、その中身を全て保存します。マークされたファイル がある場合は、カーソル位置のファイルではなくマークフ ァイルが対象となります。 バックアップには tar(1) を用います。デバイス名の入力 の際に、デバイスを示すスペシャルファイル以外を与えた 場合、そのファイル名でアーカイブファイルを作成します。 ファイルの閲覧 (View) カーソル位置のファイルを閲覧します。閲覧に用いるペー ジャは、内部変数 PAGER を参照して用いますが、内部変 数が未定義の場合には環境変数 PAGER を参照します。 ファイルの圧縮 (Pack) カーソル位置のファイルを指定のアーカイブファイルに圧 縮します。カーソル位置がディレクトリだった場合には、 その中身を全てアーカイブファイルに入れます。マークさ れたファイルがある場合は、カーソル位置のファイルでは なくマークファイルが対象となります。 入力したアーカイブファイルの拡張子を見て、それぞれに 応じたアーカイバを自動的に選択します。デフォルトでは、 tar ファイルとその圧縮ファイル及び LHa 圧縮ファイル にしか圧縮できませんが、初期設定ファイルに記述するこ とで、これ以外のアーカイバにも対応できるようになりま す。 但し、tar(1) を用いる場合は、一度に渡せるパラメータ 長の限界のせいで、たくさんのファイルを一度に圧縮する ことができない場合があります。そのような場合は、 BACKUP_TAPE を用いてアーカイブファイルを作成して下さ い。 ツリーを用いたファイル操作 [L], [C], [M], [U] を押すと、パス名の入力の際に、文 字列を入力する代わりにツリー構造の中から選択させるこ とができます。それぞれ、LOG_DIR, COPY_FILE, MOVE_FILE, UNPACK_FILE と同等の機能の内部コマンドが 実行されます。 ファイルの検索移動 ワイルドカードにマッチするファイルを、カレントディレ クトリから下に階層的に検索し、見つかったファイルのあ るディレクトリに移動します。カーソル位置がディレクト リだった場合は、カレントディレクトリでなく、カーソル 位置のディレクトリの下を検索します。 マッチした個々のファイルに対し、そこに移動するかどう かを確認してきますので、目的のファイルが表示されるま では [n](No) を選択して下さい。 再帰的なファイル属性変更 カーソル位置のディレクトリファイルを、再帰的にファイ ル属性変更します。マークファイルの属性変更と同様に、 モード、タイムスタンプ、オーナーとグループのいずれか を選んでから、ディレクトリ以下の全てのファイル属性を 変更します。 但し、モードの入力では、実行ビットの属性は、3 値のト グルではなく、'X' と '!' を含んだ 5 値のトグルになっ ていますので注意して下さい。'X' は対象がディレクトリ であるかもしくはいずれかの実行ビットが立っている時の み、そのビットを有効にします。同様に '!' は対象がデ ィレクトリであるかもしくはいずれかの実行ビットが立っ ている時のみ、そのビットを無効にします。また、 [m](Mask) を入力するとその位置のビット値は '*' でマ スクされ、元のファイルの属性値を保存します。 ランチャの起動 サブディレクトリ以外のカーソル位置で [Return] を押す と、それぞれのファイル拡張子に応じた動作をします。デ フォルトでは、tar ファイルとその圧縮ファイル及び LHa 圧縮ファイルに対し、アーカイブブラウザが登録されてい ます。初期設定ファイルに記述することで、これ以外のコ マンドもランチャとして登録することができます。 カーソル位置が未登録の拡張子のファイルだった場合は、 VIEW_FILE と同じ挙動を示します。アーカイブブラウザ画 面でも、登録ランチャは有効に機能し、再帰的にアーカイ ブブラウザを起動することも可能です。 symbolic リンク表示形式の切替え ファイル表示欄やステータス行に表示されるファイル情報 は、symbolic リンクファイルの場合には、リンク先の本 体ではなくリンクファイルのものになっています。これを、 トグルスイッチでリンク先本体の情報を参照するように切 替えます。(UNIX) リンク本体情報参照モードでは、ファンクション行の左端 に 'S'(Symbolic Link) と表示されます。 ファイルタイプシンボル表示の切替え ls(1) の -F オプションでの表示と同様に、ファイル一覧 リストのファイル名の欄に、そのファイルのタイプを表す シンボル文字を付加して表示します。トグルスイッチでシ ンボルの表示非表示を切替えます。各シンボルの意味は以 下のとおり。 / ディレクトリ @ symbolic リンク * 実行可能ファイル = ソケット | FIFO (MS-DOS 版及びフロッピードライブ) / ディレクトリ * 実行可能ファイル = システムファイル | ラベル ファイルタイプ表示モードでは、ファンクション行の左端 に 'T'(Type) と表示されます。 ドットファイル表示非表示の切替え '.' で始まるファイル名のファイルを、ファイル一覧内に 表示しないようにします。トグルスイッチでドットファイ ルの表示非表示を切替えます。 ドットファイル非表示モードでは、ファンクション行の左 端に 'H'(Hidden) と表示されます。 ファイルフラグ表示の切替え 各ファイルのファイルモードの代わりに、一部の OS にあ るファイルフラグを表示します。トグルスイッチでファイ ルフラグの表示とファイルモードの表示を切替えます。フ ァイルフラグのない OS では機能しません。各シンボルの 意味は順に以下のとおり。(UNIX) A Archived N Nodump a system Append-only c system unChangable (immutable) u system Undeletable a user Append-only c user unChangable (immutable) u user Undeletable ファイルフラグ表示モードでは、ファンクション行の左端 に 'F'(Flags) と表示されます。 ファイル名の検索 カレントディレクトリ内でファイル名をインクリメンタル サーチし、カーソルを移動していきます。コマンドを実行 するとサーチモードに移行し、ファンクション行にプロン プトが現れますので、ここで検索したいファイル名をキー 入力していくと、その時点で入力されている文字列にマッ チするファイル名にカーソルが順次移動していきます。 [Esc] で通常モードに復帰できます。 ウィンドウの分割 現在のウィンドウを分割します。通常のウィンドウ非分割 モードの時に分割を行なうと、画面を縦方向に二分割して 使うウィンドウ分割モードになります。ウィンドウ分割モ ードでは、それぞれのウィンドウ内で独立して作業を行な うことができます。ウィンドウ分割モードの時に更に分割 を行なうと、現在操作中のウィンドウ画面を縦方向に二分 割します。最大で 5 つまでの分割ウィンドウを作成する ことができます。 ウィンドウ間の移動 ウィンドウ分割モードの時に次のウィンドウに移動します。 現在のウィンドウが最後の時には先頭のウィンドウに移動 します。ウィンドウ非分割モードでは意味を持ちません。 ウィンドウの拡張 ウィンドウ分割モードの時に現在のウィンドウサイズを大 きくし、その分だけ次のウィンドウサイズが小さくなりま す。現在のウィンドウが最後の時には先頭のウィンドウサ イズが小さくなります。ウィンドウ非分割モードでは意味 を持ちません。 ウィンドウの縮小 ウィンドウ分割モードの時に現在のウィンドウサイズを小 さくし、その分だけ次のウィンドウサイズが大きくなりま す。現在のウィンドウが最後の時には先頭のウィンドウサ イズが大きくなります。ウィンドウ非分割モードでは意味 を持ちません。 ウィンドウの破棄 ウィンドウ分割モードの時に現在のウィンドウを破棄して 直前のウィンドウに統合します。現在のウィンドウが先頭 の時には最後のウィンドウと統合されます。破棄した結果 ウィンドウの数が一つになるとウィンドウ非分割モードに なります。ウィンドウ非分割モードでは意味を持ちません。 カスタマイザの起動 内部変数や組込みコマンドで設定する内容を、対話的に変 更するカスタマイザを起動します。ここで設定した内容は 即座に反映されますが、初期設定ファイルに反映させるに は、カスタマイザ内で明示的に書込みを実行する必要があ ります。 ヘルプ画面の表示 現在のキー割当てとそのコマンド内容を一覧表示します。 一画面に収まりきらない場合は一画面分の表示で一旦キー 入力を待ちます。 また、バイナリ頒布の実行ファイルでは、この画面のファ ンクション行に頒布責任者の連絡先が表示されますので、 何かあった場合にはこちらの連絡先にご一報下さい。 fdの終了 (Quit) fd を終了します。 コマンド EXECUTE_SH や初期設定ファイルの中では、外部コマンド以外に上 述の内部コマンドや後述の組込みコマンドが使用できます。これら のコマンドについては、一つ以上のコマンドを | または |& で区 切ってパイプラインを構成することができます。| の前段のコマン ドの標準出力は後段のコマンドの標準入力に渡されます。|& の場 合は、前段のコマンドの標準出力と標準エラー出力の両方が後段の コマンドの標準入力に渡されます。パイプラインの終了ステータス は最後段コマンドの終了ステータスになりますが、パイプラインの 先頭を ! で始めることで、パイプラインの終了ステータスを最後 段コマンドの終了ステータスの論理否定にすることができます。ま た、一つ以上のパイプラインを ;, &, &|, &&, || で区切ってコマ ンドリストを構成することができます。コマンドリストは ; や & または &| で終わっていても構いません。これらの区切り子は各々 以下のような意味を持ちます。 ; 前段のパイプラインから順に実行します。 & 前段のパイプラインの終了を待たずに後段のパイプライン を同時に実行します。(UNIX) &| 最初から disown されていることを除いて & と同じです。 (UNIX) && 前段のパイプラインを実行し、その終了ステータスが 0 ならば後段のパイプラインを実行します。 || 前段のパイプラインを実行し、その終了ステータスが 0 でなければ後段のパイプラインを実行します。 コマンドリストの中では、改行文字は ; と同じ意味を持ちます。 また、コマンドリスト中の各々のコマンドは、以下のリダイレクト 記述子により入出力を切替えることができます。リダイレクト記述 子は、コマンド文字列の中のどの位置にあっても構いません。 nfile ファイルディスクリプタ n で表される出力をファイ ル file への出力に切替えます。n を省略すると、 標準出力を指定したものと見なされます。ファイル file が存在しない場合は新たに生成され、存在する 場合はファイルサイズ 0 に切詰められてから出力さ れます。 n>|file 組込みコマンド set により -C オプションが設定さ れている場合でも、強制的に既存ファイルに上書き するという点を除けば、> と全く同等です。 n>>file ファイルディスクリプタ n で表される出力をファイ ル file への出力に切替えます。n を省略すると、 標準出力を指定したものと見なされます。ファイル file が存在しない場合は新たに生成され、存在する 場合はその後ろに追加されます。 n1<&n2 ファイルディスクリプタ n1 で表される入力をファ イルディスクリプタ n2 で表される入力に切替えま す。n1 を省略すると、標準入力を指定したものと見 なされます。 n1>&n2 ファイルディスクリプタ n1 で表される出力をファ イルディスクリプタ n2 で表される出力に切替えま す。n1 を省略すると、標準出力を指定したものと見 なされます。 &>file 標準出力と標準エラー出力の両方を同時にファイル file への出力に切替えます。ファイル file が存在 しない場合は新たに生成され、存在する場合はファ イルサイズ 0 に切詰められてから出力されます。 &>|file 組込みコマンド set により -C オプションが設定さ れている場合でも、強制的に既存ファイルに上書き するという点を除けば、&> と全く同等です。 &>>file 標準出力と標準エラー出力の両方を同時にファイル file への出力に切替えます。ファイル file が存在 しない場合は新たに生成され、存在する場合はその 後ろに追加されます。 n<>file ファイルディスクリプタ n で表される入出力をとも にファイル file の入出力に切替えます。n を省略 すると、標準入力を指定したものと見なされます。 n>&n2 ファイルディスクリプタ n1 で表される入出力をフ ァイルディスクリプタ n2 で表される入出力に切替 えます。n1 を省略すると、標準入力を指定したもの と見なされます。 n1><&n2 ファイルディスクリプタ n1 で表される入出力をフ ァイルディスクリプタ n2 で表される入出力に切替 えます。n1 を省略すると、標準出力を指定したもの と見なされます。 n<- n<&- ファイルディスクリプタ n で表される入力を閉じま す。n を省略すると、標準入力を指定したものと見 なされます。 n>- n>&- ファイルディスクリプタ n で表される出力を閉じま す。n を省略すると、標準出力を指定したものと見 なされます。 n<>- n<>&- ファイルディスクリプタ n で表される入出力を閉じ ます。n を省略すると、標準入力を指定したものと 見なされます。 n><- n><&- ファイルディスクリプタ n で表される入出力を閉じ ます。n を省略すると、標準出力を指定したものと 見なされます。 n<<[-]word ファイルディスクリプタ n で表される入力を、文字 列 word と同じ文字列から成る入力行が現れるか、 もしくはファイルの終端までの部分の入力に切替え ます。word にクォートで囲まれた部分がある場合は 入力行を評価しません。そうでなければ各入力行は 評価され、変数展開や文字列置換が行なわれます。- が指定された場合、入力行の先頭にあるタブを全て 削除してからコマンドに渡します。n を省略すると、 標準入力を指定したものと見なされます。 但し、それぞれのリダイレクトでファイルを指定する場合、ファイ ル名として `scheme://host:port' 形式の文字列を指定すると、 scheme 文字列の内容に応じてそれぞれ下記のような TCP ソケット をオープンします。待受けポート番号の指定には OS 上の権限によ る制限があります。(UNIX) connect://host:port host で示されるリモートホストの port で示される 番号の TCP ポートに接続するソケットをオープンし ます。 accept://[host][:port] host で示されるローカルホストへの接続を、port で示される番号の TCP ポートで待受けるソケットを オープンします。host を省略すると任意のホストへ の接続を受理します。port を省略すると OS の定め た範囲の任意ポートを用います。 bind://[host][:port] host で示されるローカルホストへの接続を、port で示される番号の TCP ポートに束縛されたソケット をオープンし、組込みコマンド accept での待受け に備えます。host を省略すると任意のホストへの接 続を受理します。port を省略すると OS の定めた範 囲の任意ポートを用います。 なお、各コマンド入力行においては、'#' から行末まで、及び空行 は無視されます。行の最後尾が '\' で終っている場合は、その行 の記述が次行にも継続しているとみなしますので、一行が長くなる ような場合はこれで分割できます。 組込みコマンド fd では以下の組込みコマンドが用意されています。これらの組込 みコマンドは、EXECUTE_SH や初期設定ファイルの中で用いること ができます。 if list then [elif list then list] ... [else list] fi if 節及び elif 節の list が先頭から順に実行さ れ、その終了ステータスが 0 ならば対応する then 節の list が実行され、その時点で後続の elif 節 は無視されます。もしどの if 節や elif 節の list も 0 で終了しなかった場合、else 節の list が実行されます。どの then 節や else 節の list も実行されなかった場合は、if は終了ステータス 0 を返します。 while list do list done while 節の list が繰返し実行され、その終了ステ ータスが 0 である間ずっと do 節の list が繰返 し実行されます。do 節の list が一度も実行され なかった場合は、while は終了ステータス 0 を返 します。 until list do list done until 節の list が繰返し実行され、その終了ステ ータスが 0 でない間ずっと do 節の list が繰返 し実行されます。do 節の list が一度も実行され なかった場合は、until は終了ステータス 0 を返 します。 for NAME [in value ...] do list done value リストの値を一つずつ順に内部変数 NAME に 代入し、そのそれぞれについてコマンドリスト list を実行します。in value を省略すると、位置 パラメータを順に代入します。 case word in [pattern [| pattern] ... ) list ;;] ... esac 文字列 word と各パターン pattern とを比較し、 最初にマッチした pattern に対応するコマンドリ スト list を実行します。 (list) サブシェル内で list を実行します。 { list; } 現行シェル内で list を実行します。 NAME=[value] [com ...] fd 内でのみ有効の内部変数の定義を行ないます。 内部変数 NAME に値(文字列) value を代入します。 変数定義に続いてコマンド com を記述すると、こ の変数を環境変数として渡した状態で com を実行 します。この場合、NAME の定義は環境変数として も内部変数としても残りません。 value を省略すると、内部変数 NAME の値としてナ ルを定義します。内部変数の定義を削除する場合に は組込みコマンド unset を用いて下さい。 name() { list; } コマンドリスト list を関数 name として定義しま す。定義された関数は、EXECUTE_SH の入力ライン のほか、後述の各コマンドマクロ内に用いることが できます。各コマンド記述内では位置パラメータ $n が記述可能で、これは、関数呼出時の引数を指 しています。$0 が name そのもので、$1-$9 まで が引数を指します。 { } や list は省略できませんが、list が単文か らなる場合は前後の { } を省略しても構いません。 関数定義を削除する場合には組込みコマンド unset を用いて下さい。 !num 数値 num で表される履歴番号のコマンドを実行し ます。num が負数だった場合は、現在の履歴番号か ら相対的に数えて num 番目の履歴番号のコマンド を実行します。 !! 直前のコマンドを実行します。!-1 と同義です。 !str 文字列 str で始まる行のコマンド履歴を実行しま す。 : [arg ...] 何もしません。但し、arg の評価やリダイレクトの 実行は行なわれます。 . file source file ファイル file を読み込んで評価します。file は PATH に含まれるディレクトリにあるか、もしくは パス名付表記でなくてはいけません。ファイルの各 行の書式は EXECUTE_SH コマンドの書式に準拠しま す。ファイル内で入れ子にしてファイルを読み込ま せることもできます。 accept [fd] fd で表されるファイルディスクリプタをソケット として待受けを行ない、接続が確立すると接続ソケ ットを同じファイルディスクリプタ fd に割付けま す。この時、待受けに用いたソケットはクローズさ れます。fd が bind:// 形式のリダイレクトでない 場合は失敗します。accept:// 形式のリダイレクト と比べ、実際の接続を受ける前に一旦シェルに制御 が戻るので、リモートホストとの間で事前に TCP ポート番号のネゴシエーションを行なう場合に利用 することができます。(UNIX) fd を省略すると標準入力に対して待受けを行ない ます。 addcr [-1] [file] file で示されるファイルから一行ずつ読込んで標 準出力に出力します。各行の改行コードは CR-NL (\r\n) に統一されます。ソケットに対する出力を 行なう際にパイプとして用いると有用です。 file を省略すると標準入力を指定したものと見な されます。-1 を指定すると一行分だけ出力して終 了します。 alias [name[=com]] コマンド com の別名として name をエイリアス定 義します。定義されたエイリアスは、EXECUTE_SH の入力ラインのほか、後述の各コマンドマクロ内に 用いることができます。エイリアスによる置換は再 帰的に行なわれます。 com を省略すると、name のエイリアスを表示しま す。com も name も省略すると、現在定義されてい る全てのエイリアスを一覧表示します。 arch ext [pack unpack] 拡張子 ext のアーカイブファイルに対するアーカ イバコマンドを登録します。pack には圧縮時のコ マンドを、unpack には伸長時のコマンドを、それ ぞれ " で括ったマクロ表記で記述します。ext の 先頭を / で始めると、拡張子の比較の際に大文字 小文字の違いを無視して比較します。 pack, unpack 共に省略すると、拡張子 ext に対す るアーカイバコマンド登録を削除します。 bg [job] job で表されるジョブの実行をバックグラウンドで 再開します。ジョブを指定するには下記の書式が有 効です。(UNIX) % %+ カレントジョブ %- 一つ前のジョブ %n ジョブ番号 n のジョブ %str コマンドラインが str で始まるジョブ 但し、後述のパラメータマクロ機能のために、 EXECUTE_SH のコマンドライン入力ではこれらの % の部分は %% と重ねて記述する必要があります。 job を省略するとカレントジョブをバックグラウン ドで再開します。 bind c [com1 [com2] [:comment]] キー c に対して、コマンド com1 を割当てます。c にコントロール文字を指定したい場合は、^ を冠し て ^A のように 2 文字で記述します。Meta キー (MS-DOS 版では Alt キー) を併用する文字を指定 したい場合は、@ を冠して @a のように 2 文字で 記述します。ファンクションキーや機能キーを指定 したい場合は、後述の keymap コマンドで用いられ ている各識別子を用い、F10 のように文字列で記述 します。また、\n =0x0a や \e =0x1b といったエ スケープ文字列、8 進数を用いた \ooo といった表 記もできます。 fd の持つ内部コマンドの割当ては、コマンド識別 子をそのまま記述できます。引数付きで内部コマン ドを定義したい場合や、コマンドをマクロ表記で定 義する場合は、" で括った文字列を記述します。 com2 を省略せずに記述すると、カーソル位置がデ ィレクトリだった場合に com2 の方を実行します。 キー c が F1 から F20 のファンクションキーの場 合、コマンドの記述に続いて : を冠して comment を記述すると、ファンクション行の該当部分の表示 を comment に変更できます。 但し、コントロール文字に対するキー割当てについ ては、後述の編集モードの設定が優先しますので気 をつけて下さい。 com1, com2 共に省略すると、キー c に対するキー 割当て登録を削除します。 break [n] ループから抜けます。for などのステートメント中 で用います。n が指定されていると n 段階分ルー プから抜けます。 browse [-@ file] browse com [-ftbie arg] [-p com2] [-dn {noprep,loop}] ... コマンド com を実行し、その出力を渡してアーカ イブブラウザを起動させます。com にはコマンドの マクロ表記を " で括って記述します。-f オプショ ン及び -t, -b, -i, -e の各オプションは、組込み コマンド launch で用いられるものと同等です。複 数の com を記述すると、アーカイブブラウザ内で 各々のファイルを選択した場合に、その次に記述さ れたコマンド com が順次実行され、それぞれのコ マンド com に続いて記述されたフォーマットやパ ターンが用いられます。一つ前の段階のアーカイブ ブラウザに戻るには、ファイル .. を選ぶか [Bs] キーを押します。QUIT_SYSTEM コマンドは browse で起動された全てのアーカイブブラウザを終了しま す。また、最後に記述されたコマンド com 以外に は -f オプションが必須です。最後の com に -f オプションが指定されなかった場合には、アーカイ ブブラウザを起動する代わりに単にそのコマンドを 実行し、実行後はアーカイブブラウザに戻ります。 -p オプションを指定すると、ファイル選択時に次 のコマンド com の実行に進む前にコマンド com2 が実行されます。パイプ用のサブシェルで実行され る com と異なり、com2 はカレントシェルで実行さ れますので、このコマンド内で設定した内部変数値 は com2 終了後も継承されます。また、その段階の アーカイブブラウザに到達するまでに選択してきた ファイル名が位置パラメータに順次保存され、最後 に選択したファイル名は $1 に保存されています。 この値はファイルを選択する都度更新されますので、 com や com2 の中で組込みコマンド set や shift を使って書換えても、次のファイル選択時にはこれ までの選択履歴のとおりに再設定されます。-d 及 び -n オプションは、選択したファイルがそれぞれ ディレクトリだった場合とディレクトリでなかった 場合の制御を記述します。noprep を指定すると -p オプションで指定した com2 を実行しません。loop を指定するとファイル選択後に次のコマンド com に進まずに同じ段階のコマンド com を再度実行し ます。 また、browse の引数が長くなって記述が面倒な場 合には、引数を記述したファイル file を -@ オプ ションで指定することもできます。-@ オプション は引数の中の任意の場所に記述可能で、file に記 述された各引数は -@ のある位置に挿入されます。 file として - を指定するとファイルの代わりに標 準入力から引数を読込みます。file の中には引数 を空白文字または改行で区切って記述します。空行 または # で始まる行は無視されます。file の中に -@ オプションを記述した場合は、再帰的に引数フ ァイルが参照されます。 builtin arg ... 単純な組込みコマンドとして arg を実行します。 arg と同名の関数定義があった場合でも、関数は実 行されません。 cd [-LP] [dir] chdir [-LP] [dir] fd 内のカレントディレクトリを dir に移動します。 dir を省略すると内部変数 HOME で示されるディレ クトリに移動します。パス名として ".", "?", "-", "@" を指定すると、LOG_DIR と同様の挙動が 得られます。 -L が指定されると、symbolic リンクを辿って論理 的なディレクトリ移動を行ないます。-P が指定さ れると、symbolic リンクを辿らずに物理的なディ レクトリ移動を行ないます。どちらも指定しない時 は、組込みコマンド set の physical オプション に従います。 checkid [file ...] RFC1321 の MD5 アルゴリズムに従って、指定され たファイルの一意な ID を計算し表示します。複数 の file を指定すると指定された全ファイルについ て ID を表示します。一つも指定しなかった場合は、 実行中の fd 自身の ID を表示します。 安全性の保証されたアルゴリズムなので、ファイル の同一性を確認する手段として有効です。 cls 画面を消去します。 command [-p | -v | -V] arg ... 単純なコマンドとして arg を実行します。arg と 同名の関数定義があった場合でも、関数は実行され ません。-p が指定されると、現在の PATH の値の 代わりに既定値を用いてパス検索します。-v が指 定されると、arg を実行する代わりに arg の絶対 パスを表示します。この時、arg が内部コマンドで あれば単にその名前を表示します。-V が指定され ると type と同様に arg に関する詳細説明を表示 します。 continue n ループの中で次の繰返しを開始します。for などの ステートメント中で用います。n が指定されている と n - 1 段階上層のループの中で次の繰返しを開 始します。 copy [-ABVY-Y] src [-AB] [+ src2 [-AB] [+ ...]] [dest [-AB]] src で示されるファイルを dest で示されるファイ ルまたはディレクトリにコピーします。dest がデ ィレクトリを表している時にはコピー先のファイル 名は src になります。dest を省略するとカレント ディレクトリにコピーされます。コピー元のファイ ルは + で区切るかワイルドカードを用いるかで複 数指定できます。+ で区切った場合はそれらのファ イルを連結してコピーします。ワイルドカードを用 いた場合は、コピー先がディレクトリなら一つずつ コピーし、コピー先がファイルなら連結してコピー します。 -A を指定すると ASCII テキストファイルとして扱 います。-B を指定するとバイナリファイルとして 扱います。-V を指定するとコピーの正否を照合し ます。-Y を指定するとコピー先の上書き確認のキ ー入力待ちをしません。--Y を指定するとコピー先 の上書き確認のキー入力待ちをします。 (MS-DOS 版では COMMAND.COM との互換性のために、 オプション識別用文字として - の代わりに / を用 います。) del [-P] file erase [-P] file file で示されるファイルを削除します。ファイル はワイルドカードを用いて複数指定できます。 -P を指定すると削除する前に確認のキー入力待ち をします。 (MS-DOS 版では COMMAND.COM との互換性のために、 オプション識別用文字として - の代わりに / を用 います。) dir [-[-]PWSBLV4] [-A[DRHSA-]] [-O[NSEDGA-]] [dir] dir で表されるディレクトリ中のファイルとサブデ ィレクトリを一覧表示します。dir 省略時にはカレ ントディレクトリの情報を表示します。 -P を指定すると一画面毎にキー入力待ちになりま す。-W を指定するとワイド一覧形式で表示します。 -A を指定するとその後続文字で表される属性のフ ァイルのみ表示します。 D ディレクトリ R 読取り専用 H 隠しファイル S システムファイル A アーカイブ - その属性以外 -O を指定するとその後続文字で表されるソート形 式でソートします。 N 名前順 S サイズ順 E 拡張子順 D 日付順 G ディレクトリ優先 A 最終アクセス順 - 逆順 -S を指定するとサブディレクトリの中のファイル も表示します。-B を指定するとファイル名とディ レクトリ名のみを表示します。-L を指定すると小 文字で表示します。-V を指定すると詳細情報を表 示します。-4 を指定すると西暦を 4 桁で表示しま す。また、これらのオプション文字の前に - を冠 すると、そのオプションを上書きして無効にします。 (MS-DOS 版では COMMAND.COM との互換性のために、 オプション識別用文字として - の代わりに / を用 います。) dirs 現在のディレクトリスタックの一覧を表示します。 ディレクトリスタックは pushd 及び popd コマン ドで積み降ろしされます。 disown [job] job で表されるジョブをシェルの管理下から外しま す。disown されたジョブは、組込みコマンド jobs や fg, bg で制御できなくなります。ログインシェ ルとして起動された時には、disown されていない ジョブはシェル終了時に強制終了されます。(UNIX) job を省略するとカレントジョブをシェルの管理化 から外します。 dtype file file で示されるファイルの内容を表示します。 echo [-nN] [arg ...] arg を標準出力に出力します。-n が指定されない 場合は arg の最後に改行を出力します。-N が指定 された場合は出力する改行を CR-NL (\r\n) にしま す。echo(1) を参照して下さい。 enable [-n] [arg ...] arg を組込みコマンドとして有効にします。-n が 指定された場合は無効にします。arg を省略すると 現在有効または無効になっている組込みコマンドの 一覧を表示します。 eval [arg ...] arg を評価した後実行します。 evalmacro [arg ...] arg に含まれるパラメータマクロを評価した後実行 します。eval はパラメータマクロを評価しません ので、用途に応じて適宜使い分けて下さい。また、 関数の中ではパラメータマクロが使えないので、パ ラメータマクロの展開にはこのコマンドが必要にな ります。 exec [com [arg ...]] fd の実行を com に置換えて実行を続けます。com の引数として arg を指定できます。 exit [n] fd を終了します。n が指定されていると終了ステ ータス n で終了します。 export [NAME[=[value]] ...] 内部変数 NAME を環境変数として子プロセスに継承 させるようにします。以降、NAME への定義は全て 子プロセスでも参照されるようになります。値が未 定義の内部変数を export した場合は、その内部変 数に値が定義された時点で初めて環境変数となりま す。値の定義も同時に行ないたい場合は、value を 指定して下さい。 = のみ記述して value を省略すると、環境変数 NAME の値としてナルを定義します。引数なしで実 行された場合は、現在 export されている環境変数 の一覧を表示します。環境変数の定義を削除する場 合には組込みコマンド unset を用いて下さい。 false 終了ステータス 1 を返すだけで何もしません。 fc [-l | -s [old=new ...]] [-nr] [-e editor] [first [last]] コマンド履歴を表示したり編集したりします。 first 及び last でコマンド履歴の範囲を選択しま す。範囲指定には数値もしくは文字列が使用できま す。正の数値は履歴番号を示し、負の数値は現在の 履歴番号から相対的に数えた番号のコマンド履歴を 示します。文字列で指定すると、その文字列で始ま る行のコマンド履歴を示します。-n が指定される とコマンド履歴一覧に履歴番号を付けません。-r が指定されるとコマンド履歴一覧が逆順になります。 -e が指定されるとコマンド履歴編集に使うエディ タを editor に指定します。未指定時には内部変数 FCEDIT または EDITOR で指定されたエディタコマ ンドが用いられます。 -l が指定されると標準出力に指定された範囲のコ マンド履歴を一覧表示します。この時、last を省 略すると現在の履歴番号が指定されたものと見なし、 更に first も省略すると -16 が指定されたものと 見なします。 -s が指定されると first で指定されたコマンド履 歴を即時実行します。この時、first を省略すると 現在の履歴番号が指定されたものと見なします。指 定されたコマンド履歴の文字列中に old という文 字列が存在した場合は、実行前にその部分を new という文字列に置換えてから実行します。 -l も -s も指定されなかった場合は、指定された 範囲のコマンド履歴を編集し、編集を終えると編集 されたコマンドが標準出力に表示されながら逐次実 行されます。この時、last を省略すると first を 指定されたものと見なし、更に first も省略する と共に現在の履歴番号が指定されたものと見なしま す。 fd [directory [directory2]] 内蔵シェルから fd を起動します。directory を指 定すると、起動直後にカレントディレクトリをその ディレクトリに移動します。directory2 を指定す ると、ウィンドウ分割モードで起動し、追加ウィン ドウ側のカレントディレクトリをそのディレクトリ に移動します。QUIT_SYSTEM により内蔵シェルに戻 ります。fdsh として起動された時のみ有効です。 fg [job] job で表されるジョブの実行をフォアグラウンドで 再開します。ジョブを指定するには下記の書式が有 効です。(UNIX) % %+ カレントジョブ %- 一つ前のジョブ %n ジョブ番号 n のジョブ %str コマンドラインが str で始まるジョブ 但し、後述のパラメータマクロ機能のために、 EXECUTE_SH のコマンドライン入力ではこれらの % の部分は %% と重ねて記述する必要があります。 job を省略するとカレントジョブをフォアグラウン ドで再開します。 getfreq [file] かな漢字変換学習用のユーザ変換頻度ファイル file の内容を標準出力に出力します。出力形式は 一行一レコードで、各行は「読み仮名」「単語」 「頻度数」をタブ文字で区切った文字列になってい ます。この出力は、setfreq に渡すことで頻度情報 のインポートに用いることができます。file を省 略すると内部変数 FREQFILE で指定されたユーザ変 換頻度ファイルを指定したものと見なします。 (UNIX) getkey [num] 押下したキーに対するキーコード文字列を取得しま す。コマンド実行後にキー入力待ちになりますので、 検査したいキーを押すと、そのキーに対するキーコ ード文字列を表示します。num 回キーを押下すると 終了です。num が 2 回以上の場合は、[Space] を 押しても終了させることができます。num が 0 回 の場合には [Space] が押されるまで無限に繰り返 されます。ここで表示される文字列は、そのまま keymap コマンドのキーコード文字列として使用可 能です。(UNIX) num を省略すると、1 回を指定したものと見なしま す。 getopts optstr NAME [arg ...] arg の並びからオプションパラメータを展開するの に用いられます。オプションとして有効な文字は optstr に列挙された文字だけです。あるオプショ ン文字が引数を取る場合は、optstr の記述の中で その文字の後ろに : を続けます。getopts が呼出 される度に、arg の並びから展開された新しいオプ ション文字が内部変数 NAME に代入されます。引数 を持つオプション文字の場合は、その引数が内部変 数 OPTARG に代入されます。また、次に展開するパ ラメータの位置がその都度内部変数 OPTIND に代入 されます。OPTIND の値は起動時に 1 に初期化され ますが、別のオプションパラメータ展開を行なう際 には、予め手動で OPTIND の値を 1 に初期化して おく必要があります。arg を省略すると、位置パラ メータをオプションパラメータに展開します。 オプションの終端に達した場合は、getopts は 1 を返します。この時、NAME には ? が代入されます。 optstr に含まれないオプション文字が見つかった 場合は、標準エラー出力にエラーメッセージを表示 し、NAME に ? を代入し OPTARG を unset します。 但し、optstr が : で始まっていると、エラーメッ セージは表示せずに、代わりに見つかったオプショ ン文字を OPTARG に代入します。引数を要するオプ ション文字に引数が伴わなかった場合は、標準エラ ー出力にエラーメッセージを表示し、NAME に ? を 代入し OPTARG を unset します。但し、optstr が : で始まっていると、エラーメッセージは表示せず に、代わりに見つかったオプション文字を OPTARG に代入し NAME に : を代入します。 hash [-r | com ...] 外部コマンド実行時の検索パス PATH を参照して com に対する絶対パスを検索し、その結果をハッシ ュテーブルに登録します。 com の代わりに -r を指定するとこれまで記憶して いたハッシュテーブルを全て破棄します。com を省 略するとハッシュテーブル情報の一覧を表示します。 hits, cost, command は、それぞれそのコマンドの 実行された回数、検索パス上で検索するのに要した 仕事量、コマンドの絶対パスを表します。検索され たコマンドが相対ディレクトリにあった場合は、絶 対パスとして登録されませんので、カレントディレ クトリを移動する度に再検索する必要があります。 このようなコマンドでは、hits の値に続いて * が 表示されます。 history [n] 最近の n 個のコマンド履歴を、履歴番号を添えて 一覧表示します。 n を省略すると、現在記憶されている全てのコマン ド履歴を一覧表示します。 jobs 実行中のジョブを一覧表示します。(UNIX) kconv [-i in] [-o out] [infile [outfile]] infile を読込み、漢字コードを in から out に変 換して outfile に出力します。in 及び out には 後述の内部変数 FNAMEKCODE に用いる文字列が指定 できます。省略すると、コンパイル時に指定された 漢字コードが指定されたと見なされます。outfile を省略すると、標準出力に出力します。infile も 省略すると、標準入力から読込みます。(UNIX) keymap [c [str]] 各種機能キー c のキーコードとして str の文字列 をマッピングします。c には以下の識別子のみ使用 可能です。(UNIX) UP ↑ DOWN ↓ RIGHT → LEFT ← BEG Begin EOL Eol HOME Home END End INS Insert DEL Delete INSLIN InsLine DELLIN DelLine PPAGE PageUp NPAGE PageDown ENTER Enter BS Bs CLR Clear HELP Help PLUS + (tenkey) MINUS - (tenkey) ASTER * (tenkey) SLASH / (tenkey) COMMA , (tenkey) DOT . (tenkey) EQUAL = (tenkey) RET Return (tenkey) TK0..TK9 0-9 (tenkey) F1...F20 ファンクションキー キーコード文字列内では、\n =0x0a や \e =0x1b といったエスケープ文字列が使用可能です。8 進数 を用いた \ooo といった表記もできます。また、^ を冠して ^A のようにコントロール文字を記述する こともできます。^ 自身は \^ と記述します。 str を省略すると、c に対するキーコード文字列を 表示します。str も c も省略すると、現在特殊キ ーに割当てられている全てのマッピングを一覧表示 します。str に対し "" を指定すると、c に対する キーコードマッピングを無効にします。 kill [-l | -signal] [pid | job ...] プロセス番号 pid で表されるプロセスまたは job で表されるジョブに対して signal で表されるシグ ナルを送ります。signal は数値もしくはシグナル 名で表します。 signal を省略すると SIGTERM を送ります。-l を 指定するとシグナルを送る代わりに signal として 使えるシグナル名を一覧表示します。 launch ext [com [format [top bottom]]] launch ext com [-f format] [-t top] [-b bottom] [-ie patt] 拡張子 ext に対する挙動をランチャとして登録し ます。com にはコマンドのマクロ表記を " で括っ て記述します。アーカイブブラウザを登録する場合 には、com にはアーカイブファイルの一覧表示のた めのコマンドを記述し、format に一覧表示形式の フォーマットを記述します。top 及び bottom を記 述すると、一覧表示のうちで不必要な行を、それぞ れ先頭行からの行数及び最終行から行数として指定 できます。ext の先頭を / で始めると、拡張子の 比較の際に大文字小文字の違いを無視して比較しま す。 com を省略すると、拡張子 ext に対するランチャ 登録を削除します。 アーカイブブラウザを登録する場合には、後者の書 式を用いるとより詳細に制御を記述できます。-f オプションを複数記述することにより、複数のフォ ーマット候補を指定できます。これらのフォーマッ ト候補は記述された順に比較され、どれも完全にマ ッチしない場合は一番近いフォーマット候補に従い ます。-i 及び -e オプションでは、それぞれ無視 する行とエラー扱いにする行のパターン patt を指 定します。一覧表示の中に不必要な行が含まれてい る場合には、top や bottom で指定することもでき ますが、先頭行や最終行以外の行は -i オプション を用いて指定して下さい。また、アーカイブファイ ルの展開に失敗した際に特定の文字列を含んだ出力 がなされる場合には、その文字列を -e オプション を用いて指定して下さい。-i 及び -e オプション はどちらも複数指定することができ、そのうちいず れかひとつにマッチすれば有効になります。また、 パターン patt の記述にはいずれもワイルドカード を用いることができます。 md dir ディレクトリ dir を作成します。 mkdir dir md と同じ。(DOS) newgrp [arg ...] fd の実行を newgrp(1) に置換えて実行を続けます。 newgrp(1) の引数として arg を指定できます。 newgrp(1) を参照して下さい。(UNIX) login [arg ...] fd の実行を login(1) に置換えて実行を続けます。 login(1) の引数として arg を指定できます。 login(1) を参照して下さい。(UNIX) logout [n] ログインシェルを終了します。n が指定されている と終了ステータス n で終了します。 popd ディレクトリスタックから一番上のディレクトリを 引き降ろし、fd 内のカレントディレクトリをその ディレクトリに移動します。ディレクトリスタック が空の時には失敗します。 printarch [ext] 拡張子 ext のアーカイブファイルに対して登録さ れているアーカイバコマンドを表示します。 ext を省略すると、現在登録されている全てのアー カイバコマンドを一覧表示します。 printbind [c] キー c に割当てられているコマンドを表示します。 キーの指定方法は bind コマンドと同様です。 c を省略すると、現在登録されている全てのキー割 当てのうち、内部コマンドではなくコマンドマクロ として定義されているものを一覧表示します。各内 部コマンドのキー割当ては、HELP_MESSAGE で参照 できます。 printdrv [c] ドライブ名 c に対して登録されているフロッピー ドライブのデバイスファイル及びそのヘッド数、セ クタ数、シリンダ数を表示します。(UNIX) c を省略すると、現在登録されている全てのフロッ ピードライブを一覧表示します。 printlaunch [ext] 拡張子 ext に対してランチャとして登録されてい るコマンドマクロを表示します。アーカイブブラウ ザとして登録されているものについては、一覧表示 形式のフォーマットを併記します。 ext を省略すると、現在登録されている全てのラン チャを一覧表示します。 printroman [roman] かな漢字変換入力モードで用いるローマ字かな変換 テーブルを表示します。ローマ字文字列 roman に 対して割当てられた日本語文字列を表示します。 (UNIX) roman を省略すると、現在登録されている全てのロ ーマ字かな変換テーブルを一覧表示します。 pushd [dir] カレントディレクトリをディレクトリスタックの一 番上に積み、fd 内のカレントディレクトリを dir に移動します。パス名として ".", "?", "-", "@" を指定すると、LOG_DIR と同様の挙動が得られます。 symbolic リンクを辿るか否かは組込みコマンド set の physical オプションに従います。 dir を省略すると、ディレクトリスタックの一番上 のディレクトリに移動し、そのスタック内容をカレ ントディレクトリに入れ換えます。その場合、ディ レクトリスタックが空の時には失敗します。 pwd [-LP] カレントディレクトリを絶対パス表記で出力します。 -L が指定されると、symbolic リンクを辿った論理 的なパス名を出力します。-P が指定されると、 symbolic リンクを含まない物理的なパス名を出力 します。どちらも指定しない時は、組込みコマンド set の physical オプションに従います。 read [-N] [NAME ...] 標準入力から一行読込み、その文字列を内部変数 NAME に代入します。入力文字列は IFS で区切って 単語毎に分割されます。NAME が複数指定されてい た場合は、行の先頭の単語から順に一つずつ代入さ れ、最後の NAME に残り全部が代入されます。入力 行の中の単語数が NAME の数に満たない場合は、余 った NAME にはナルが定義されます。 -N が指定されると、改行を CR-NL (\r\n) と見な して一行読込みます。 readline [prompt] 端末入力から一行読込み、その文字列を標準出力に 出力します。prompt が指定された場合には入力行 の先頭にその文字列を表示してから入力を開始しま す。常に端末からの入力になり、また行編集機能が ある点で組込みコマンド read と異なります。行編 集機能のうちヒストリ機能は使えませんがパス名補 完機能は使えます。 readonly [NAME[=[value]] ...] 内部変数 NAME を読込み専用にします。これ以降、 NAME の値を変更することはできなくなります。値 の定義も同時に行ないたい場合は、value を指定し て下さい。 = のみ記述して value を省略すると、内部変数 NAME の値としてナルを定義します。引数なしで実 行された場合は、現在読込み専用にされている内部 変数の一覧を表示します。 rd dir ディレクトリ dir を削除します。中身が空でない ディレクトリは削除できません。 rmdir dir rd と同じ。(DOS) ren old new rename old new ファイル名またはディレクトリ名 old を new に変 更します。old や new にワイルドカードを指定し て複数のファイル名を一括して変更することもでき ます。 rem [arg ...] 何もしません。: と同等です。 return [n] n で指定された返り値で関数を終了します。n を省 略した場合は直前に実行したコマンドの終了ステー タスを返り値とします。関数の外では使えません。 savetty [-n] 現在の端末設定を保存します。保存された端末設定 は以降の EXECUTE_SH コマンド実行時に復元されま す。stty(1) 等で端末設定を変更した場合には、こ のコマンドでその設定を保存しないと以降の EXECUTE_SH 実行時には設定がリセットされます。 また、端末設定の変更とこのコマンドが同じコマン ドラインにないと、リセットされた設定を保存して しまいますので注意して下さい。-n が指定された 場合は保存された端末設定を破棄します。(UNIX) set [--abCefhkmntuvx] [-o option] [arg ...] 引数なしで実行された場合は、内部変数と関数の一 覧を表示します。arg が指定された場合は arg を 位置パラメータ $1, $2, ..., $n に順次代入しま す。オプションが指定された場合は各々以下のよう な意味を持ちます。各オプションパラメータは、- の代わりに + を用いると、各々のオプションをオ フにします。 -a 内部変数が定義されると自動的に export し ます。 -b バックグラウンドジョブが終了した時点で、 直ちに状況通知を表示します。ジョブ制御が 有効でない場合は意味を持ちません。 -C ファイルへのリダイレクト時に、既存ファイ ルに対し上書きをしないようにします。 -e コマンドが 0 以外の終了ステータスを返した 時に即座に終了します。 -f ワイルドカードの展開を抑制します。 -h コマンドハッシュを先読みして登録します。 また、関数が定義された時点で、その中で使 われているコマンドを先読みしてコマンドハ ッシュに登録します。コマンドハッシュ自体 は -h オプションに拘らず常に有効になって います。 -k NAME=[value] 形式の変数定義がコマンドライ ン文字列の先頭以外にある場合も変数定義と して扱います。 -m ジョブ制御を有効にします。このオプション はデフォルトで有効になっています。(UNIX) -n コマンド入力を読込むだけで実行しません。 -o option option には以下の識別子が有効です。 allexport -a と同等です。 autosavetty -S と同等です。 emacs EDITMODE=emacs と同等です。 errexit -e と同等です。 hashahead -h と同等です。 ignoreeof 対話型シェルの場合、EOF を入力しても シェルを終了しないようにします。 keyword -k と同等です。 monitor -m と同等です。 noclobber -C と同等です。 noexec -n と同等です。 noglob -f と同等です。 notify -b と同等です。 nounset -u と同等です。 onecmd -t と同等です。 physical -P と同等です。 ptyshell -T と同等です。 verbose -v と同等です。 vi EDITMODE=vi と同等です。 xtrace -x と同等です。 option が省略されると、現在のオプション設 定値を一覧表示します。 -P cd や pwd コマンドで、symbolic リンクを辿 った論理的なディレクトリ構造を用いる代わ りに、物理的なディレクトリ構造を用いるよ うにします。 -S コマンド入力行を処理する度に自動的に組込 みコマンド savetty を実行します。意図的 に端末設定を操作した時以外も無条件に端末 設定を保存するので、意図しない端末設定が 保存されてしまった場合は手動で正しい端末 設定に戻す必要があります。(UNIX) -T fdsh を疑似端末モードで起動します。この 状態から更に疑似端末を起動することはでき ません。起動時オプションまたは初期設定フ ァイル内で設定された場合のみ有効です。非 対話型シェルとして起動された場合は、起動 時オプションで設定された場合のみ有効です。 また、fd として起動された場合はこのオプ ションは無視されます。(UNIX) -t 現在のコマンド入力行を実行し終えた時点で 即座に終了します。 -u 未定義の変数が参照された場合にエラーとし て扱います。 -v コマンド入力を読込む度にその入力文字列を 表示します。 -x コマンド実行時にそのコマンド文字列を表示 します。 -- オプションの終わりを示します。何の変更も しません。 setdrv c device hd sc cl MS-DOS フロッピーを扱うドライブ名 c に device で表されるデバイスファイルを指定します。同時に、 device のドライバで扱うフォーマットのヘッド(サ イド)数、セクタ数、シリンダ(トラック)数を、そ れぞれ hd, sc, cl で指定します。特殊な例として、 720KB2DD(hd=2/sc=9/cl=80) しか扱えないドライバ で 640KB2DD(hd=2/sc=8/cl=80) のフロッピーを扱 いたい場合、sc の値として 100 加えた値(108)を 指定します。(UNIX) PC 上で動作する PC-UNIX 環境では、hd, sc, cl の代わりに文字列 HDD もしくは HDD98 を指定する ことで、MS-DOS フロッピーではなく、それぞれ PC/AT 互換機用と PC-98x1 用のハードディスクの MS-DOS パーティションを登録することができます。 この場合、デバイスファイルにはパーティション ( スライス) 単位のデバイス名ではなく、物理ドライ ブ装置単位のデバイス名を記述します。ドライブ装 置に含まれる MS-DOS パーティションが、ドライブ 名 c 以降のドライブ名に自動的に展開されます。 指定ドライブ装置に MS-DOS パーティションが含ま れていなかった場合には、このコマンドは無視され ます。どのドライブ名が有効になったかは、 printdrv コマンドで確認できます。但し、安全の ため、ハードディスクは読込専用で登録されます。 setfreq [file] 標準入力から入力した頻度情報を、かな漢字変換学 習用のユーザ変換頻度ファイル file に追加します。 入力形式は getfreq の出力形式に準拠します。追 加ではなく置換をしたい場合は、予めユーザ変換頻 度ファイルを削除しておいて下さい。file を省略 すると内部変数 FREQFILE で指定されたユーザ変換 頻度ファイルを指定したものと見なします。(UNIX) setroman [-c] [-r] [-f file] [roman [kanji]] かな漢字変換入力モードで用いるローマ字かな変換 テーブルを設定します。ローマ字文字列 roman に 対して、日本語文字列 kanji を割当てます。roman は 1byte 文字のみから構成される文字列で、4 文 字を越える部分は無視されます。kanji は 2bytes 文字または 1byte 文字から構成される文字列で、2 文字を越える部分は無視されます。この場合、 2bytes 文字も 1byte 文字も等しく 1 文字と数え ます。(UNIX) kanji を省略すると、ローマ字文字列 roman に対 するローマ字かな変換テーブルの割当て登録を削除 します。-c を指定するとローマ字かな変換テーブ ルをクリアして空にします。-r を指定するとこれ までの割当て登録をリセットしてローマ字かな変換 テーブルを初期状態に戻します。-f を指定すると、 file で示されるファイルからローマ字かな変換テ ーブルの割当てを読込みます。この場合、file に は各行に roman と kanji の組を空白文字で区切っ て記述して下さい。または printroman の出力をそ のまま収めたファイルでも構いません。 shift [n] $n+1 以降の位置パラメータを $1 から順に再設定 します。元の $1 から $n までの位置パラメータは 破棄されます。n を省略した場合は 1 が指定され たものと見なされます。 socketinfo [-apAP] [fd] fd で表されるファイルディスクリプタがソケット の場合、接続されているリモートホストの IP ア ドレスと TCP ポート番号、及び接続されているロ ーカルホストの IP アドレスと TCP ポート番号を 標準出力に出力します。fd がソケットでない場合 は失敗します。(UNIX) fd を省略すると標準入力を指定したものと見なさ れます。-a を指定するとリモートホストの IP ア ドレスのみを出力します。-p を指定するとリモー トホストの TCP ポート番号のみを出力します。-A を指定するとローカルホストの IP アドレスのみを 出力します。-P を指定するとローカルホストの TCP ポート番号のみを出力します。 test [expr] [ expr ] 条件式 expr を評価します。test(1) を参照して下 さい。 times これまでに実行されたプロセスのユーザ及びシステ ム積算時間を表示します。 trap [com] [n ...] fd がシグナル n を受取った際にコマンド com が 評価され実行されます。com が省略された場合はそ のシグナルに対するトラップは元の状態に戻されま す。com の値としてナルが指定された場合はそのシ グナルは無視されます。n の値として 0 を指定す るとコマンド com は終了時に実行されます。com も n も省略した場合は登録されているトラップの 一覧を表示します。 true 終了ステータス 0 を返すだけで何もしません。 type [com ...] 各々の com がコマンド名として使用された場合に どう扱われるかを表示します。 ulimit [-SH] [-a | -cdflmnstv] n fd 及びその子プロセスが利用できるリソースの制 限を n で表される値に設定します。n には文字列 unlimited もしくは数値を用い、unlimited は指定 可能な最大値を意味します。(UNIX) -H を指定するとハードな制限を設定します。-S を 指定するとソフトな制限を設定します。どちらも指 定しないと両方の制限を設定します。n を省略する と現在の設定値を表示します。-a を指定すると全 ての制限に対して設定値を表示します。 以下のオプションを指定するとそれぞれの制限を個 々に設定もしくは表示します。これらのオプション がどれも指定されていない場合は、-f が指定され たものと見なします。 -c コアファイルサイズの最大値。(ブロック単位 ) -d データセグメントの最大値。(KB 単位) -f ファイルサイズの最大値。(ブロック単位) -l メモリロックの最大値。(KB 単位) -m プロセスサイズの最大値。(KB 単位) -n 同時にオープンできるファイル数の最大値。 -s スタックサイズの最大値。(KB 単位) -t CPU 時間の最大値。(秒単位) -v 仮想メモリの最大値。(KB 単位) umask [nnn] ファイル生成マスク値を nnn に設定します。nnn を省略した場合は現在のファイル生成マスク値を表 示します。umask(2) を参照して下さい。 unalias name エイリアス name の定義を取消します。name には ワイルドカードを用いることが可能で、その場合に はマッチする全てのエイリアス定義を取消します。 "*" を指定すれば、全エイリアス定義が無効になり ます。 unset [NAME ...] 各々の NAME に対して定義されている内部変数や関 数の定義を削除します。但し下記の変数定義は削除 できません。 PATH PS1 PS2 IFS MAILCHECK PPID unsetdrv c device hd sc cl 既に登録されているフロッピードライブの登録を削 除します。device, hd, sc, cl の全てが一致した 登録のみ削除されるので、よく確認して削除して下 さい。(UNIX) setdrv 時に HDD または HDD98 で登録した場合に は、hd, sc, cl の代わりにそれぞれ HDD 及び HDD98 を記述します。 wait [pid | job] プロセス番号 pid で表されるプロセスまたは job で表されるジョブを待ち、その終了ステータスを返 します。pid も job も指定しない場合は稼働中の 全ジョブを待ちます。(UNIX) yesno [prompt] 端末入力から y または n の入力を待ち、y が入力 された場合には 0 を、n が入力された場合には 255 をそれぞれ返します。y または n を入力する 代わりに表示されている [Y/N] の文字をカーソル で選んで [Return] を押すと、選択された文字を入 力したことになります。[Space] または [Esc] の 入力は n を入力したことになります。prompt が指 定された場合には [Y/N] の表示の前にその文字列 を表示します。 COMMAND [arg] fd の持つ内部コマンド COMMAND を実行します。 COMMAND には、各コマンド識別子を記述します。以 下の内部コマンドでは、パラメータを引数 arg と して記述できます。 CUR_UP CUR_DOWN CUR_RIGHT CUR_LEFT ROLL_UP ROLL_DOWN WIDEN_WINDOW NARROW_WINDOW 行数、桁数またはページ数。 RENAME_FILE PACK_FILE BACKUP_TAPE ファイル名。 LOG_DIR MAKE_DIR INFO_FILESYS UNPACK_FILE ディレクトリ名。 EXECUTE_SH コマンド文字列。 MARK_FIND FIND_FILE FIND_DIR 検索文字列。 MARK_ALL 0 で全ファイルのマークを解除、 それ以外で全ファイルにマーク。 SORT_DIR 内部変数 SORTTYPE に使用する数 値。 EDIT_CONFIG 編集する内部変数名。 上記の各登録文字列内の ~ や $ は展開されますが、" の代わりに ' で括られた文字列内では、これらの展開が抑制されます。 ツリー表示画面 ツリー表示画面では、ファイルシステム全体の構造をツリーで表す には時間がかかり過ぎるので、最初は直系の親に当たるディレクト リと、カレントディレクトリ直下のサブディレクトリのみ表示しま す。直系の親に当たるディレクトリでは、その他のサブディレクト リ(あった場合)を "..." で一括して表します。このように一括表 示されたサブディレクトリでは、カーソルがその位置に来ると自動 的に展開するようになっています。 まだその内部を展開していないサブディレクトリには、ファイル名 の後ろに '>' をつけてその旨を表記します。このようなディレク トリは、明示的に展開を要求しない限りは展開しないので、展開さ れていないサブディレクトリ下に移動したい場合は下記に示すキー 入力により展開してから移動して下さい。 ツリー表示モードでは、以下のキー入力が有効です。 ↑, ↓ カーソル移動 → カーソル位置のサブディレクトリの展開 Tab カーソル位置のサブディレクトリの展開(再帰的) PageUp, PageDown 半画面分のカーソル移動 Home(<), End(>) ツリーの先頭、最後尾にカーソル移動。 ? カレントディレクトリにカーソル移動。 Bs 親ディレクトリにカーソル移動。 ← カーソル位置のサブディレクトリの一括化。また は親ディレクトリにカーソル移動。 (, ) 同じ階層のサブディレクトリで、前(次)のディレ クトリにカーソル移動。 A - Z そのキーの文字及びその子文字を頭文字とするよ うな名前を持つディレクトリにカーソル移動。 l ツリー表示ディレクトリの変更。フロッピードラ イブへの移動も行なえます。 ^L ツリー構造の再描画 Return ディレクトリの選択 Esc キャンセル なお、再帰的にディレクトリの展開を行なっている時など、マシン の処理が遅くてフリーズしているように見える場合があるかも知れ ません。このような場合には、処理中に何らかのキーを入力して下 さい。ディレクトリの展開中にキー入力を認めた場合、途中であっ てもその時点でディレクトリの展開を中止します。キーリピートが 効き放しになった場合でも、この機能のおかげで処理が溜らないよ うになっています。 アーカイブブラウザ アーカイブブラウザの登録されている拡張子のファイル位置でラン チャを起動すると、アーカイブブラウザ画面になります。この画面 では、通常のディレクトリ内と同じように、アーカイブファイル内 のファイルをブラウジングしていくことができます。但し、この画 面では以下の内部コマンドは使用できません。 LOG_TOP ATTR_FILE COPY_FILE MOVE_FILE DELETE_FILE DELETE_DIR RENAME_FILE MAKE_DIR WRITE_DIR TREE_DIR EDIT_FILE LOG_TREE COPY_TREE MOVE_TREE FIND_DIR ATTR_DIR SYMLINK_MODE DOTFILE_MODE FILEFLG_MODE SPLIT_WINDOW KILL_WINDOW また、新しいアーカイブブラウザを登録したい場合、以下のような 書式でアーカイバの一覧表示形式のフォーマットを記述してやる必 要があります。フォーマット文字列ひとつで、一覧表示の 1 ファ イル分の表示形式を表すことになります。 %a ファイルモードを表すフィールド %l ファイルのリンク数を表すフィールド %u ファイルの UID を表すフィールド %g ファイルの GID を表すフィールド %s ファイルサイズを表すフィールド %y ファイル作成年を表すフィールド %m ファイル作成月を表すフィールド (表示は数値でも英字 3 文字表記でもどちらでも可。) %d ファイル作成日を表すフィールド %w ファイル作成曜日を表すフィールド (無視されます。) %t ファイル作成時間を表すフィールド (表示は "HH:MM:SS" 形式。分や秒はなくても可。) %p ファイル作成午前午後を表すフィールド %B デバイス ID のメジャー番号を表すフィールド %b デバイス ID のマイナー番号を表すフィールド %/str/ このフィールド文字列が str のときに ディレクトリであることを表すフィールド (大文字小文字同一視。) %!str! 文字列 str から成るフィールドが 0 個以上連続したもの (大文字小文字同一視。) %f ファイル名を表すフィールド %x 必要のないフィールド (無視されます。) %% % 自身 \n 改行 Space Tab 0 個以上の空白文字もしくはタブ。 ここでは、「フィールド」とは空白文字、タブ文字または改行で分 けられている領域のことを指します。各情報を表す文字列がこれら の文字で区切られている場合は、上記のうちそのフィールドを表す 文字列をそのまま並べて記述します。これらの文字以外で区切られ ている場合は、上記の文字列をその区切り文字で区切って記述しま す。また、フィールド長を数値で表して、%10a のように記述する こともできます。この例ではファイルモードを表すフィールドが 10 文字から成ることを表しています。フィールド長として数値の 代わりに * を用いて %*f のように記述すると、空白文字やタブ文 字を無視して行末までをひとつのフィールドと見なします。 ひとつのフィールドが、場合によって異なる二つの意味を持つよう な場合は、%{yt} のように { } で括って記述します。この例では このフィールドが作成年または作成時間を示すことを表しています。 また、一つのファイル情報が複数行から成るような場合には、フォ ーマット文字列中の改行位置に \n を含めて下さい。 例として、幾つかのアーカイバの一覧表示形式のフォーマットを、 この書式で記述して挙げておきます。ここでは見易さのため空白文 字を使いますが、各フィールド間の空白文字は無視されますのであ っても無くても構いません。 `lha l' "%9a %u/%g %s %x %m %d %{yt} %f" `lha v' (MS-DOS) "%f\n%s %x %x %y-%m-%d %t" `tar tvf' (BSD) "%9a %u/%g %s %m %d %t %y %f" `tar tvf' (SVR4) "%a %u/%g %s %m %d %t %y %f" 以上のフォーマットを用いて、EXECUTE_SH の組込みコマンドもし くは初期設定ファイルによって登録を行なえば、デフォルトで用意 してあるアーカイブブラウザ以外も使用できるようになります。但 し、アーカイブファイル内のファイルを実行したり閲覧したりする ためには、そのアーカイブファイル用のアーカイバコマンドも登録 しておく必要がありますので、注意して下さい。 一部の OS では、環境変数 LANG に japanese を指定しておくと、 タイムスタンプの表示に "HH時 MM分 SS秒" という日本語混在の出 力をする tar(1) が存在します。このような表示形式は fd では解 析できないので、この場合は初期設定ファイルで `export LANG=C' としておくか、一覧表示用のコマンド記述で `LANG=C tar tvf' の ように LANG を指定すると良いでしょう。 フロッピードライブ (UNIX) ディレクトリ名の先頭に "c:" をつけて書き表すことで、MS-DOS フォーマットのフロッピーにアクセスすることができます。但し、 フロッピードライブの登録と、この機能を有効にするための内部変 数 DOSDRIVE の設定を事前に行なっておくことが必要です。 登録された各ドライブは、ドライブ名によって区別されます。物理 的に異なるドライブには必ず異なるドライブ名をつけて下さい。同 一のドライブで複数のフォーマットに対応している場合は、それぞ れのフォーマットの登録を同じドライブ名で行なっても構いません し、それぞれ異なるドライブ名で行なっても構いません。同じドラ イブ名をつけられた場合には、登録されている順番にフォーマット の適合を試みますので、よく使うフォーマットの登録を先に持って きた方が良いでしょう。 フロッピードライブはドライブ単位でカレントディレクトリを持っ ています。この初期値はルートディレクトリで、フロッピーを入れ 換えるとカレントディレクトリは再びルートディレクトリに戻りま す。ディレクトリ名として ':' の後ろを '/' で始めると、そのド ライブの絶対パス表記になります。この '/' がないと、そのドラ イブのカレントディレクトリからの相対表記と見なされますので注 意して下さい。 但し、WRITE_DIR, INFO_FILESYS など一部の内部コマンドは、フロ ッピードライブに対応していませんのでご了承下さい。また、ファ イル名長などの制限から、UNIX 上のファイルをコピーした場合に 名前が変更される場合があります。 ドライブ名として小文字を用いると、MS-Windows format floppy の Long File Name (LFN) が扱えるフロッピードライブとしてアク セスできます。この場合、UNIX 上の長いファイル名もそのままコ ピーすることができます。但し、UNICODE 変換テーブル fd-unicd.tbl が、起動された fd の存在するディレクトリにない 場合は、漢字のファイル名は LFN 形式では扱えません。逆に、大 文字のドライブ名を用いると、LFN を無視して 8+3 形式のファイ ル名を扱います。このドライブ名の大小による仕様は、MS-DOS 版 にもそのまま継承されています。 URL ドライブ (UNIX) ディレクトリ名として URL 文字列を用いることで、ネットワーク 上のリモートサービスにアクセスすることができます。URL の書式 は scheme://[user[:password]@]host[:port]/directory/ です。 scheme には ftp または http が指定できます。host にはリモー トホストの名前または IP アドレスを指定します。port には TCP ポート番号を指定します。port を省略すると既定ポート番号を用 います。ftp の既定ポート番号は 21、http の既定ポート番号は 80 です。user 及び password には、リモートホストに接続するた めのアカウント情報を記述できます。user を省略すると、ftp の 場合は anonymous FTP による接続を行ない、http の場合は必要に 応じてユーザに問い合わせを行ないます。password を省略すると 必要に応じてユーザに問い合わせを行ないます。但し、この機能を 有効にするための内部変数 URLDRIVE の設定を事前に行なっておく ことが必要です。 なお、FTP や HTTP のプロトコル上の制限もしくはホスト側の設定 により、一部の内部コマンドは URL ドライブに対応していません のでご了承下さい。 文字列の入力 パス名などの文字列を入力する場合には、以下のキー入力が有効で す。参照される履歴の種類は要求される入力文字列によって異なり ます。ウィンドウ分割モードでは、もう一方のウィンドウのカレン トディレクトリが常にパス名履歴の先頭にあります。 ←, → カーソル移動。 ↑, ↓ これまでの履歴 (コマンド及びパス名のみ) の参照。ま たはカーソル移動。 Beg 文字列の先頭にカーソル移動。 Eol 文字列の最後尾にカーソル移動。 Ins 挿入モードと上書モードの切替え。(起動時は挿入モー ド) Del カーソル位置の一文字を消去。 Bs カーソル直前の一文字を消去。 DelLine カーソル以降の文字列全てを消去。 InsLine 後続の入力文字をそのまま入力文字として扱います。コ ントロール文字の入力に有効です。 Enter 現在のカーソル位置のファイル名を取込。 PageUp カーソル位置の英文字を大文字に。 PageDown カーソル位置の英文字を小文字に。 Tab カーソル位置でパス名、コマンド名もしくは内部変数名 の補完。 選択候補が複数ある場合には、連続して入力することに より選択候補リストが表示されます。内蔵シェルのコマ ンドライン以外では、この選択候補リストの中からカー ソルキーと [Return] を使って候補の選択ができます。 ^L 入力文字列の再描画。 ^S, ^R これまでの履歴 (コマンド及びパス名のみ) のインクリ メンタルサーチを行います。 Return 入力決定。または補完選択候補リスト内での候補決定。 Esc キャンセル。 また、入力された文字列は、評価される直前に以下のような展開が 行なわれます。この展開は、コマンドマクロの文字列中でも有効で す。但し、引用符 ' で括られた文字列中においてはこの展開は抑 制されます。 ~ ファイル名の先頭にあって、ユーザ本人のホームディレク トリを指します。 ~user ファイル名の先頭にあって、user のホームディレクトリ を指します。(UNIX) ~FD ファイル名の先頭にあって、起動された fd の存在するデ ィレクトリを指します。 $NAME ${NAME} 内部変数、または環境変数 NAME の値を指します。重複し て定義されている場合は、内部変数の方が優先します。ど ちらにも未定義だった場合はナルに置き換わります。中括 弧 { } は NAME を後続の文字から分離します。 NAME が以下の一文字であった場合には、シェルによって 自動的に代入された値に置き換わります。 0 起動時の実行ファイル名。 [1-9] 位置パラメータ。 * $1 で始まる全ての位置パラメータ。"$*" は "$1 $2 ..." に置き換わります。 @ $1 で始まる全ての位置パラメータ。"$@" は "$1" "$2" ... に置き換わります。 # 位置パラメータの数。 - 起動時オプションまたは組込みコマンド set で設 定されたオプションフラグ。 ? 直前に実行されたコマンドの終了ステータス。 $ 現行シェルのプロセス番号。 ! 直前に実行されたバックグラウンドプロセスのプ ロセス番号。 ${NAME:-word} 内部変数、または環境変数 NAME にナル以外の値が設定さ れていればその値に置き換わり、そうでなければ word に 置き換わります。 ${NAME:=word} 内部変数、または環境変数 NAME にナル以外の値が設定さ れていればその値に置き換わり、そうでなければ内部変数 NAME に word を代入し、この式自体は word に置き換わ ります。但し、位置パラメータには代入できません。 ${NAME:?word} 内部変数、または環境変数 NAME にナル以外の値が設定さ れていればその値に置き換わり、そうでなければ word を 表示してシェルから抜けます。word が省略された場合は、 代わりに parameter null or not set という文字列を表 示します。 ${NAME:+word} 内部変数、または環境変数 NAME にナル以外の値が設定さ れていれば word に置き換わり、そうでなければナルに置 き換わります。 ${NAME-word} 内部変数、または環境変数 NAME に値が設定されていれば その値に置き換わり、そうでなければ word に置き換わり ます。 ${NAME=word} 内部変数、または環境変数 NAME に値が設定されていれば その値に置き換わり、そうでなければ内部変数 NAME に word を代入し、この式自体は word に置き換わります。 但し、位置パラメータには代入できません。 ${NAME?word} 内部変数、または環境変数 NAME に値が設定されていれば その値に置き換わり、そうでなければ word を表示してシ ェルから抜けます。word が省略された場合は、代わりに parameter null or not set という文字列を表示します。 ${NAME+word} 内部変数、または環境変数 NAME に値が設定されていれば word に置き換わり、そうでなければナルに置き換わりま す。 ${#NAME} 内部変数、または環境変数 NAME の値の文字数に置換わり ます。NAME が * または @ の場合は文字数でなく位置パ ラメータの数に置換わります。 ${NAME%word} 内部変数、または環境変数 NAME の値の最後尾から word で示されるパターンに一致する最も短い部分を削除した文 字列に置換わります。NAME が * または @ の場合は各々 の位置パラメータについて置換えが行なわれます。(MS- DOS 版では % の代わりに \ を用います。) ${NAME%%word} 内部変数、または環境変数 NAME の値の最後尾から word で示されるパターンに一致する最も長い部分を削除した文 字列に置換わります。NAME が * または @ の場合は各々 の位置パラメータについて置換えが行なわれます。(MS- DOS 版では %% の代わりに \\ を用います。) ${NAME#word} 内部変数、または環境変数 NAME の値の先頭から word で 示されるパターンに一致する最も短い部分を削除した文字 列に置換わります。NAME が * または @ の場合は各々の 位置パラメータについて置換えが行なわれます。 ${NAME##word} 内部変数、または環境変数 NAME の値の先頭から word で 示されるパターンに一致する最も長い部分を削除した文字 列に置換わります。NAME が * または @ の場合は各々の 位置パラメータについて置換えが行なわれます。 \c 文字 c 自身を示します。上記の ~ や $ などのメタキャ ラを評価せずにそのまま文字として使いたい時に用います。 \ 自身は "\\" と表します。但し、MS-DOS 版では、パス 名デリミタに用いられる \ は通常文字と同様に処理され なくてはならないため、便宜上 %c の形で \ の代用とし ます。 以降は EXECUTE_SH や EXECUTE_FILE で実行されるシェル内でのみ 置き換えられます。 `list` list を実行しその標準出力に置き換わります。 $(list) `list` と同様に list を実行しその標準出力に置き換わ ります。入れ子にして記述できる点で `list` と異なりま す。また、list に含まれる引用符などのメタキャラをそ のまま評価します。 $((expression)) 数式 expression を評価しその結果の数値に置き換わりま す。expression には数値や変数の他、以下の演算子を用 いた整数演算を記述できます。 (単項) (二項) 算術演算子 + - + - * / % 条件演算子 ! == != < > <= >= && || ビット演算子 ~ & | ^ << >> 括弧 ( ) ? * [ ] これらの文字が含まれる文字列は、既存ファイル名とのパ ターンマッチングを行ない、マッチした場合はマッチした 全てのファイル名をアルファベット順にソートしたものに 置き換えられます。 ? / 以外の任意の一文字とマッチします。 * / を含まない 0 個以上の任意の文字列とマッチしま す。 ** / を含む 0 個以上の任意の文字列とマッチします。 [...] [ ] で囲まれた文字のうち任意の一文字とマッチし ます。囲まれた文字に - が含まれる場合、- の両端 の文字間の文字コードを持つ全ての文字にマッチし ます。 [!...] [ ] で囲まれた文字以外の任意の一文字とマッチし ます。 但し、ファイル名部分の先頭の一文字が . であった場合 は、? や * はマッチしません。 編集モード カーソルキーやスクロールキーなど、特殊機能キーに割り当てられ ている機能を利用したい場合、端末の設定によっては対応するキー が存在しないこともあります。そのような場合、内部変数 EDIT- MODE に文字列を設定することで、コントロール文字をこれらの特 殊キーの代わりに用いることができます。また、これらの代替キー 機能は、組込みコマンドによるキー割当て変更に優先しますので、 ここで代替キーとして用いられているコントロール文字については キー割当ての変更が無効になります。用意されている編集モードは 以下の 3 つです。 emacs ^P = ↑ ^A = Beg ^N = ↓ ^E = Eol ^D = Del ^F = → ^Q = InsLine ^B = ← ^K = DelLine ^V = PageDn ^Y = PageUp ^O = Enter ^M = Return ^I = Tab ^H = Bs ^[ = Esc ^G = Esc wordstar ^E = ↑ ^A = Beg ^V = Ins ^N = ↓ ^F = Eol ^G = Del ^F = → ^W = Home ^] = InsLine ^S = ← ^Z = End ^Y = DelLine ^C = PageDn ^R = PageUp ^N = Enter ^M = Return ^I = Tab ^H = Bs ^[ = Esc vi vi モードは「挿入モード」と「コマンドモード」の 2 つ のローカルモードを持ち、それぞれのモードでキーの機能 が全く異なります。入力開始時はコマンドモードにいるの で、一般のキー入力を行なうには挿入モードへ移行する 4 種類のキーのいずれかを入力する必要があります。 (コマンドモード) k = ↑ 0 = Beg j = ↓ $ = Eol x = Del l = → g = Home h = ← G = End D = DelLine ^F = PageDn ^B = PageUp o = Enter ^M = Return ^I = Tab ^H = Bs ^[ = Esc (コマンドモードから挿入モードへ) i, : = モードの移行のみ I = + Beg a = + → A = + Eol R = 上書 r = 一文字上書 (挿入モード) ^V = InsLine Esc = コマンドモードへ かなり特殊なキー割当てなので、日常的に vi エディタを 用いていない人には不向きでしょう。 かな漢字変換入力 (UNIX) 文字列入力時に IMEKEY で指定したキーを入力するか、もしくは疑 似端末メニューから「漢字」を選択すると、かな漢字変換入力モー ドでの文字列入力ができます。 変換性能は、かな漢字変換辞書 fd-dict.tbl に依存し、この辞書 ファイルが fd の存在するディレクトリにない場合は、漢字への変 換はできません。また、標準でインストールされる辞書ファイルは 単漢字辞書なので、この辞書ファイルを使う限りは単漢字変換しか できませんが、pubdic 等の品詞情報を含んだ辞書を用意すること で単文節変換が可能です。連文節変換には対応していません。 かな漢字変換入力モードでは、以下のキー入力が有効です。 Space 漢字への変換。または次の変換候補の選択。 ←, → ↑, ↓ 変換候補リスト中でのカーソル移動。 Bs, Del カーソル直前の一文字を消去。 Tab 平仮名、片仮名、半角カナ、及び直接入力の切替 え。 ^L 入力文字列の再描画。 Return 変換結果の確定。 Esc キャンセル。 英字大文字一文字の後ろに 4 桁の十六進数を大文字で続けた文字 列を変換すると、先頭の英文字に応じてそれぞれ以下の漢字コード を表す十六進数と見なして、その漢字コード番号近辺の漢字を選択 するメニューが表示されます。 S Shift JIS E EUC 漢字 J JIS コード (JIS X0208) K 区点コード U UNICODE (UCS2) また、かな文字を変換せずに確定した状態で [Space] を入力する と、JIS コード一覧の中からそのかな文字で始まる読みの漢字を選 択するメニューが表示されます。 パラメータマクロ コマンドマクロの登録、及びコマンド実行用に入力する文字列内で は、以下のパラメータマクロが使用できます。但し、関数の中や、 source コマンド用の入力ファイル、初期設定ファイルの中では使 用できませんので、これらの中でパラメータマクロを使う必要があ る場合には evalmacro コマンドを使って下さい。 %C カーソル位置のファイル名。但し、アーカイバコマンド登 録用マクロではアーカイブファイルを指します。 %X カーソル位置のファイル名の拡張子を除いた部分。但し、 アーカイバコマンド登録用マクロではアーカイブファイル の拡張子を除いた部分を指します。拡張子は最後尾の一個 だけ除かれます。また、%X に続けて T, TA, M を記述す ると、それぞれ %T, %TA, %M の拡張子を除いた部分にな ります。MS-DOS 版では同様に S を続けて記述できます。 %P カレントディレクトリのパス名。 %K コマンド終了後、キー入力を待ってから fd に戻ります。 但し EXECUTE_FILE, EXECUTE_SH では %K の意味は逆にな り、デフォルトでキー入力を待ち %K の指定があれば入力 待ちしません。また、ランチャのアーカイブブラウザ登録 用マクロや、アーカイバコマンド登録用マクロでは、無条 件にキー入力待ちはできません。 %T マークファイルを可能な限り空白で区切って羅列します。 ファイルが多くてコマンド文字数が OS 上限を越えるよう な場合には、残りのマークファイルは無視されます。 %TA %T と同様にマークファイルを羅列しますが、コマンド行 から溢れたファイルは、再度同じコマンドを実行すること で、マークの最後までファイル名が渡されます。 %M マークファイルを一個ずつ渡し、マークの数だけ同じコマ ンドを順々に実行します。MARK_FIND で検索マークしてか ら、EXECUTE_SH で "mv %M %XM.bak" などとすると便利で しょう。 %N パラメータが省略された場合のファイル名の追加を抑制し ます。 %R マクロ実行時に、コマンド文字列の長さに余裕があれば、 追加でパラメータを手入力するようにします。入力時のカ ーソル位置は、マクロ中で %R のあった位置になります。 但し、ランチャのアーカイブブラウザ登録用マクロや、ア ーカイバコマンド登録用マクロ、及び EXECUTE_FILE, EXECUTE_SH では、%R は無視されます。 %S カーソル位置の LFN 形式のファイル名を 8+3 形式のファ イル名で置き換えたもの。8+3 形式の引数しか使えない外 部コマンドを用いる時に使います。また、%X と同様に、 %S に続けて T, TA, M を記述できます。(DOS) %JS このマクロで囲まれた範囲の文字列の漢字コードを、 Shift JIS に変換します。(UNIX) %JE このマクロで囲まれた範囲の文字列の漢字コードを、EUC 漢字に変換します。(UNIX) %J7 このマクロで囲まれた範囲の文字列の漢字コードを、7bit JIS に変換します。(UNIX) %J8 このマクロで囲まれた範囲の文字列の漢字コードを、8bit JIS に変換します。(UNIX) %JJ このマクロで囲まれた範囲の文字列の漢字コードを、 ISO-2022-JP に変換します。(UNIX) %JH このマクロで囲まれた範囲の文字列の漢字コードを、HEX に変換します。(UNIX) %JC このマクロで囲まれた範囲の文字列の漢字コードを、CAP に変換します。(UNIX) %JU このマクロで囲まれた範囲の文字列の漢字コードを、 UTF-8 に変換します。(UNIX) %JM このマクロで囲まれた範囲の文字列の漢字コードを、Mac OS X 用の UTF-8 に変換します。(UNIX) %JI このマクロで囲まれた範囲の文字列の漢字コードを、 iconv 用の UTF-8 に変換します。Linux 等 iconv ベース の UTF-8 を利用している環境で使われているコードです。 (UNIX) %JA このマクロで囲まれた範囲の文字列の漢字コードを、その 文字列で表されるパス名で使用されている漢字コードに変 換します。どのパス名でどの漢字コードが使用されている かは、変数 SJISPATH, EUCPATH 等で指定します。(UNIX) コマンドマクロ内でパラメータマクロを展開した結果、%C や %T などによるファイル名パラメータが一つも渡されなかった場合、自 動的に展開された文字列の最後尾には、カーソル位置のファイル名 が ./filename の形で追加されます。コマンド実行用の入力文字列 の場合、もしくは %N マクロがあった場合には、そのようなファイ ル名の追加は行なわれません。 カスタマイズ fd のカスタマイズには、以下のような方法があり、複数の方法で 重複して指定された場合には、この順で優先されることになります。 EXECUTE_SH の組込みコマンド実行 各種登録用組込みコマンドを実行することで、内部 変数定義、環境変数定義、エイリアス定義、関数定 義、キー割当て、キーマップ変更、ランチャ登録、 アーカイバコマンド登録、フロッピードライブ登録 が可能です。 カスタマイザ EDIT_CONFIG コマンドにより、内部変数定義、キー 割当て、キーマップ変更、ランチャ登録、アーカイ バコマンド登録、フロッピードライブ登録が可能で す。 コマンドラインオプション コマンドラインのオプションに、`-NAME=value' の 形式で値を渡すことにより、内部変数の定義が可能 です。 .fd2rc 実効ユーザのホームディレクトリにある初期設定フ ァイル .fd2rc を用意しておくことで、fd の実行に 先だってこのファイルに書かれたコマンドが実行さ れます。組込みコマンドや外部コマンドを記述し、 各設定を行なうことが可能です。但し、ログインシ ェルとして fdsh が起動された場合は、.fd2rc の代 わりに .fdshrc が読込まれます。 また、.fd2rc や .fdshrc の読込みに先だって、シ ステム管理者による初期設定ファイル /etc/fd2rc が読込まれます。このファイルがある場合、.fd2rc や .fdshrc で意図的に登録を削除しない限り、シス テム管理者の用意した初期設定が有効になります。 (MS-DOS 版ではそれぞれのファイル名は $HOME\fd2.rc, $HOME\fdsh.rc 及び ~FD\fd2rc とな ります。) 環境変数 内部変数に定義して有効な変数は、予め環境変数と して定義しておいても有効です。但し、fd 内では常 に内部変数の方が優先されます。また、同じ名前の 環境変数が他のアプリケーションでも使われている 場合、fd 用に別の定義をしておきたければ、各々の 環境変数名の前に FD_ の 3 文字を冠したものも同 じ用途に使用できます。この FD_ を冠した環境変数 は、冠していない環境変数よりも常に優先されるの で、FD_ のない内部変数の定義よりも、FD_ を冠し た環境変数の方が有効になります。 カスタマイザ EDIT_CONFIG コマンドにより、対話的に設定変更を行なうカスタマ イザが起動します。カーソルキーの左右でカテゴリを選び、上下で 項目を選んだ後、[Return] でその内容を変更します。変更が終わ ったら、[Esc] でカスタマイザを終了します。 カテゴリには以下のようなものがあります。 内部変数 内部変数の値を変更します。変数により値の入力方 法が異なりますので、画面説明に従って入力して下 さい。 キー割当て 各キーに割当てる機能を変更します。割当ての無い キーに新規に機能を割当てる場合には、「新規登録」 を選んで下さい。「割当て削除」を選ぶと既存のキ ー割当てを削除します。 キーマップ 各種機能キーのキーコードマッピングを変更します。 キーを押すように指示されたところで [Esc] を押す と、既存のキーマップを削除します。(UNIX) ランチャ 各拡張子に対するランチャ登録を変更します。登録 のない拡張子に新規にランチャを登録する場合には、 「新規登録」を選んで下さい。ランチャ用コマンド 入力の際に空行を入力すると、既存のランチャ登録 を削除します。 アーカイバ 各拡張子に対するアーカイバコマンド登録を変更し ます。登録のない拡張子に新規にアーカイバコマン ドを登録する場合には、「新規登録」を選んで下さ い。圧縮用コマンド入力と伸長用コマンド入力の際 に両方とも空行を入力すると、既存のアーカイバコ マンド登録を削除します。 DOS ドライブ フロッピードライブ登録を変更します。未設定のド ライブ名に新規にフロッピードライブを登録する場 合には、「新規登録」を選んで下さい。デバイス名 入力の際に空行を入力すると、既存のフロッピード ライブ登録を削除します。(UNIX) 保存 カスタマイザでの設定変更をファイルに保存したり、 設定を破棄して元の状態に戻したりします。 Cancel 指定されたカテゴリの範囲に含まれるこ れまでの設定変更を破棄し、カスタマイ ザを起動する前の状態に戻します。 Clear 指定されたカテゴリの範囲に含まれる全 ての設定を破棄し、デフォルト状態に戻 します。 Load 指定ファイルから設定を読込みます。 Save 指定されたカテゴリの範囲に含まれる全 ての設定を、指定ファイルに保存します。 Overwrite 指定されたカテゴリの範囲に含まれる全 ての設定を、指定された既存ファイルに 上書き保存します。ファイルに元々存在 していた設定を構文解析し、同じ対象の 設定はできるだけ同じ場所に上書きしま す。現在設定されていないものやカスタ マイザ対象外のものは、既存ファイルの ものをそのまま残します。 カテゴリの範囲を指定する際には、初期状態では全 てのカテゴリが選択されているので、[Space] で選 択の on/off を切替えて [Return] で決定します。 設定変更をした後、保存せずにカスタマイザを終了しようとすると、 保存しないままで終了して構わないかどうかを確認してきます。保 存しないまま終了しても設定変更は有効ですが、次に fd を起動す る時にも有効にしたい場合は、初期設定ファイルに保存しておく必 要があります。 環境変数 fd では以下の環境変数が有効です。これらの環境変数は、すべて 内部変数として定義することも可能です。また、`-NAME=value' の 書式でコマンドラインオプションとして与えることもできます。但 し、変数名の後ろに * のついているものは、環境変数として FD_ の 3 文字を冠して利用することができません。 ADJTTY fd を終了する時に、端末モードを正常な状態に強 制的にリセットします。端末が文字化けするような 状態を、fd を起動することで正しく調整すること ができます。0 かナル以外の値であれば、何を定義 しても有効です。(UNIX) ANSICOLOR ファイル表示をカラー化します。使用している端末 が、ANSI 規格のカラー制御エスケープシーケンス 対応している場合、ファイルタイプに応じて色別に 表示させることができます。値を 1 にするとカラ ー画面になります。文字色が背景色と同色で区別の つかない場合、値を 2 にすると背景色を強制的に 黒色にします。また、値を 3 にすると表示色を強 制的に黒色にします。 ANSIPALETTE ファイル表示がカラー化されている場合に、各ファ イルタイプに応じてどのような配色にするかを指定 します。この変数値は最大 11 桁の数値で構成され ます。それぞれの桁の数字は色番号を表し、各桁に 対応するファイルタイプの配色をその番号で表され る色に指定します。桁番号とファイルタイプの対応 は以下のとおり。 1 一般のファイル 2 背景 3 ディレクトリ 4 書込み禁止ファイル 5 読取り禁止ファイル 6 symbolic リンク 7 ソケット (MS-DOS ではシステムファイル) 8 FIFO (MS-DOS ではラベル) 9 ブロックデバイス 10 キャラクタデバイス 11 実行ファイル また、各桁に指定する色番号の意味は以下のとおり。 0 黒 1 赤 2 緑 3 黄色 4 青 5 紫 6 水色 7 白 8 文字の既定色 9 背景の既定色 色番号 8 は変数 ANSICOLOR の値が 3 の時に強制 的に黒色になります。色番号 9 は変数 ANSICOLOR の値が 2 の時に強制的に黒色になります。 桁が 11 桁に満たない場合やこの変数が設定されて いない場合は、後ろの桁に相当するファイルタイプ には標準の配色が用いられます。標準の配色は、上 記の色番号で表現すると 89624351888 になります。 AUTOUPDATE ブラウザ画面またはツリー表示画面を自動的に更新 する間隔を秒数で指定します。ここで指定した秒数 の間キー入力が途絶えると、表示されているファイ ル一覧情報を最新のものに更新します。0 を指定す ると自動更新しません。デフォルト値は 0 です。 BASICCUSTOM カスタマイザで編集可能な設定用内部変数を基本的 な変数のみに絞り、拡張的な変数を見えなくします。 0 かナル以外の値であれば、何を定義しても有効で す。 CDPATH* 組込みコマンド cd の引数が / で始まっていない 場合にここで指定されたパス名の中から検索するよ うに指示します。':' で区切って複数の検索パス名 を指定できます。デフォルトではパス名は一つも指 定されていません。 COLUMNS* 端末画面の桁数を示す変数として利用します。何ら かの値が設定されていた場合、画面サイズの変更に 応じてその値を自動的に置換えます。何も値が設定 されていない場合は設定されないままです。 COMSPEC バッチファイルを起動する場合に用いるシェルを指 定します。未指定時には内部変数 SHELL で定義さ れたシェルもしくは \COMMAND.COM が用いられます。 (DOS) COPYCMD* 組込みコマンド copy で使うデフォルトオプション を指定します。 DEFCOLUMNS fd 起動時の画面表示列を設定します。デフォルト 値は 2 列です。1, 2, 3, 5 以外の値を指定すると 無視されます。 DEFKCODE システム標準の漢字コードを指定します。fd から 起動される外部コマンドに渡される引数は、ここで 指定した漢字コードに変換されます。但し、%C や %JJ などの各種マクロを用いた場合は、それぞれの マクロに応じた漢字コードが用いられます。このう ち JIS8, JUNET, HEX, CAP 等は Samba で用いられ ている漢字コードです。(UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 JIS, jis 7bit JIS JIS8, jis8 8bit JIS JUNET, junet ISO-2022-JP OJIS, ojis 7bit JIS (JIS C6226-1978 + roman) OJIS8, ojis8 8bit JIS (JIS C6226-1978 + roman) OJUNET, ojunet ISO-2022-JP (JIS C6226-1978 + roman) HEX, hex HEX CAP, cap CAP UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 デフォルト 変換しない DIRCOUNTLIMIT ツリー表示モードで、ディレクトリ内のファイルを 調べる上限数を設定します。後ろに '>' のついた ディレクトリであっても、その中にサブディレクト リが一つもなければ、展開してもツリー構造は変化 しません。ディレクトリ内のファイル数 (ディレク トリも含む) がこの数値以内であれば、一つもサブ ディレクトリを持たないディレクトリには、最初か ら '>' をつけません。また、画面右に表示される ディレクトリ内ファイルの一覧も、この数値を越え ては表示しないようになります。処理の遅いマシン では、この値を 0 にしておけば、快適な処理速度 が実現できます。デフォルト値は 50 ファイルです。 DIRCMD* 組込みコマンド dir で使うデフォルトオプション を指定します。 DIRHIST ディレクトリ入力行で参照できるディレクトリ履歴 の数の上限を設定します。デフォルト値は 50 個で す。この値が 0 の時にはディレクトリ履歴参照が できません。 DIRHISTFILE ディレクトリ入力行で参照できるディレクトリ履歴 のセーブファイルを指定します。ファイル名が未指 定の場合はディレクトリ履歴はセーブもロードもさ れません。デフォルト値は未指定です。 DIRHISTUMASK ディレクトリ履歴のセーブファイルのファイル作成 マスク値を 8 進数で指定します。既存ファイルが 存在しない時のみ用いられます。但し、組込みコマ ンド umask で設定したマスク値が優先されますの で、実際に用いられるマスク値はこの値と umask 値との論理和になります。 DISPLAYMODE fd 起動時の、ファイル一覧リストのファイル名表 示形式を設定します。symbolic リンク表示形式、 ファイルタイプシンボルの表示、及びドットファイ ルの非表示を、それぞれ独立に選択できます。デフ ォルトは 0 です。設定する値は以下のとおり。 0 標準 1 SYMLINK 2 FILETYPE 3 SYMLINK & FILETYPE 4 DOTFILE 5 SYMLINK & DOTFILE 6 FILETYPE & DOTFILE 7 SYMLINK & FILETYPE & DOTFILE なお、ファイルフラグ対応の OS では、これらの値 にそれぞれ 8 を加えた値を設定することで、ファ イルフラグ表示モードを選択できます。 DOSDRIVE MS-DOS フロッピーへのアクセス機能を有効にしま す。フロッピードライブの登録がなければ、ここで 有効にしてあってもフロッピーへのアクセスはでき ません。0 かナル以外の値であれば、何を定義して も有効です。 MS-DOS 版では、この変数を定義しておくことによ り、Ver. 6.xx 以前の旧 DOS でも LFN 形式のファ イル名を扱えるようになります。この場合、フロッ ピードライブの登録は必要ありませんが、OS を経 由せずにディスク I/O を行なうため、アクセス速 度が落ちたり幾つかの機能が制限されたりします。 DUMBSHELL 内蔵シェルで入力行の編集を行なう際に、コントロ ールシーケンスを使用しません。内蔵シェルでは端 末モードのカーソル移動機能を有効にしませんが、 コンソール端末等の場合、この端末モードではコン トロールシーケンスによってカーソル移動を行なう ことができないために行編集時の表示が正しく行な われないことがあります。この変数を有効にすると、 コントロールシーケンスを用いずに行編集を行ない ますが、効率の悪いカーソル移動を行なうので、若 干の機能制限や反応速度の低下を招きます。0 かナ ル以外の値であれば、何を定義しても有効です。 EDITMODE キー入力の編集モードを文字列で指定します。デフ ォルト値は emacs です。emacs, wordstar, vi 以 外の文字列またはナルを指定した場合、コントロー ル文字は変換されずにそのまま渡されます。 EDITOR ファイルの編集時に使用するエディタコマンドを指 定します。 ENV* fdsh として起動された場合に追加で読込む初期設 定ファイルを指定します。ファイル名はフルパスで 指定する必要があります。この値が設定されていた 場合、/etc/fd2rc を読込んだ後、.fd2rc や .fdshrc を読込む前に、その初期設定ファイルを読 込みます。但し、実 UID と実効 UID が異なる場合 や、実 GID と実効 GID が異なる場合には、この値 は無視されます。 FCEDIT 組込みコマンド fc で使用するエディタコマンドを 指定します。 FD_VERSION 実行中の fd のバージョン文字列が代入されます。 FNAMEKCODE ファイル名に用いる漢字コードを指定します。ファ イルアクセスを行なう時点でここで設定した漢字コ ードにコンバートされますので、ネットワーク上の 漢字コードの異なるマシンから、漢字で書かれたフ ァイルを参照することも可能です。また、アーカイ ブブラウザや組込みコマンド browse がファイル名 を取得する際にもここで指定した漢字コードに従い ます。このうち JIS8, JUNET, HEX, CAP 等は Samba で用いられている漢字コードです。(UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 JIS, jis 7bit JIS JIS8, jis8 8bit JIS JUNET, junet ISO-2022-JP OJIS, ojis 7bit JIS (JIS C6226-1978 + roman) OJIS8, ojis8 8bit JIS (JIS C6226-1978 + roman) OJUNET, ojunet ISO-2022-JP (JIS C6226-1978 + roman) HEX, hex HEX CAP, cap CAP UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 デフォルト 変換しない FREQFILE かな漢字変換学習用のユーザ変換頻度ファイルを指 定します。ファイル名が未指定の場合は頻度情報は 保存も参照もされません。デフォルト値は ~/.fd_freq です。(UNIX) FREQUMASK かな漢字変換学習用のユーザ変換頻度ファイルのフ ァイル作成マスク値を 8 進数で指定します。ユー ザ変換頻度ファイルは更新時に上書きせずに作成し 直すため、この値は既存ファイルが存在する時にも 用いられます。但し、組込みコマンド umask で設 定したマスク値が優先されますので、実際に用いら れるマスク値はこの値と umask 値との論理和にな ります。(UNIX) FTPADDRESS URL ドライブで FTP 接続を行なう際に、anonymous FTP 用パスワードとして用いるメールアドレスを指 定します。デフォルト値は FDclone@ です。(UNIX) FTPLOGFILE URL ドライブで FTP 通信を行なう際に、通信ログ を出力するファイル名を指定します。但し、フルパ スで指定されなかった場合やログファイルを格納す るディレクトリが用意されていない場合はログ出力 を行ないません。デフォルト値は未指定です。 (UNIX) FTPPROXY URL ドライブで FTP 接続を行なう際に、プロキシ サーバとして用いる URL を指定します。URL の書 式は scheme://[user[:password]@]host[:port] で す。scheme には ftp または http が指定できます。 user 及び password には、プロキシサーバに接続 するためのアカウント情報を記述できます。デフォ ルト値は未指定です。(UNIX) FUNCLAYOUT ファンクション行のレイアウトを n * 100 + size という形式の値で指定します。n はファンクション 行に表示するファンクションキーの数を表します。 size はファンクションキーを表示するブロック単 位を表します。デフォルト値は 1005 (10 個のファ ンクションキーを 5 個単位でまとめて表示) です。 HIDEPASSWD URL ドライブでパスワード入力を行なう際に、入力 文字の代わりに * を表示するのを抑制し、何も表 示しないようにします。0 かナル以外の値であれば、 何を定義しても有効です。(UNIX) HISTFILE EXECUTE_FILE や EXECUTE_SH で参照できるコマン ド履歴のセーブファイルを指定します。ファイル名 が未指定の場合はコマンド履歴はセーブもロードも されません。デフォルト値は ~/.fd_history です。 (MS-DOS 版でのデフォルト値は $HOME\fd.hst とな ります。) HISTSIZE EXECUTE_FILE や EXECUTE_SH で参照できるコマン ド履歴の数の上限を設定します。デフォルト値は 50 個です。この値が 0 の時にはコマンド履歴参照 ができません。 HISTUMASK コマンド履歴のセーブファイルのファイル作成マス ク値を 8 進数で指定します。既存ファイルが存在 しない時のみ用いられます。但し、組込みコマンド umask で設定したマスク値が優先されますので、実 際に用いられるマスク値はこの値と umask 値との 論理和になります。 HOME* 組込みコマンド cd の引数が無い場合のデフォルト 値を示します。また、ログインシェルとして起動さ れた場合は、この変数が指定されているとそのディ レクトリをカレントディレクトリとし、指定されて いないとホームディレクトリの値を自動的に定義し ます。 HTMLLOGFILE URL ドライブで HTTP 通信を行なう際に、受信した HTML データのログを出力するファイル名を指定し ます。但し、フルパスで指定されなかった場合やロ グファイルを格納するディレクトリが用意されてい ない場合はログ出力を行ないません。デフォルト値 は未指定です。(UNIX) HTTPLOGFILE URL ドライブで HTTP 通信を行なう際に、通信ログ を出力するファイル名を指定します。但し、フルパ スで指定されなかった場合やログファイルを格納す るディレクトリが用意されていない場合はログ出力 を行ないません。デフォルト値は未指定です。 (UNIX) HTTPPROXY URL ドライブで HTTP 接続を行なう際に、プロキシ サーバとして用いる URL を指定します。URL の書 式は scheme://[user[:password]@]host[:port] で す。scheme には http が指定できます。user 及び password には、プロキシサーバに接続するための アカウント情報を記述できます。デフォルト値は未 指定です。(UNIX) IFS* フィールド区切り文字を指定します。EXECUTE_SH でコマンドと引数とを区切るのに用いられます。デ フォルトでは空白、タブ、改行が指定されています。 IGNORECASE ファイル名比較の際に、常に大文字小文字の違いを 無視して比較します。0 かナル以外の値であれば、 何を定義しても有効です。(UNIX) IMEBUFFER かな漢字変換テーブルをオンメモリで持ち続けるか か否かを設定します。かな漢字変換が高速化するの で、メモリ資源が潤沢にある環境では有用でしょう。 設定する値は以下のとおり。(UNIX) 0 オンメモリで持たない 1 品詞情報テーブルのみ 2 インデックステーブルも含む 3 全テーブルをオンメモリで持つ IMELEARNING かな漢字変換学習用のユーザ変換頻度ファイルによ る学習レベルを指定します。値が大きいほど頻度情 報を重視します。値が 0 の場合は、頻度情報を保 存しますが参照はしません。デフォルト値は 16 で す。(UNIX) IMEKEY 文字列入力中に、直接入力モードとかな漢字変換入 力モードを切替えるためのキーを指定します。設定 値には bind コマンドと同様のキー名を用いること ができます。デフォルト値は未指定です。(UNIX) INHERITCOPY COPY_FILE コマンド実行時に、コピー先のタイムス タンプをコピー元のタイムスタンプに合わせます。 0 かナル以外の値であれば、何を定義しても有効で す。(UNIX) (MS-DOS 版ではこの変数の有効無効に関わらず、常 にコピー元のタイムスタンプが継承されます。) INPUTKCODE キーボード入力時の漢字コードを指定します。これ ら以外の設定にすると、コンパイル時の設定による 漢字コードが採用されます。(UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 LANGUAGE 表示する文字の言語を指定します。fd の出力する 各種メッセージの他、漢字を含むファイル名に対す るコード変換も行なわれます。選択できる文字種は 以下のとおりですが、これらの文字列が含まれてい れば判別しますので、環境変数 LANG の値をそのま ま用いても有効です。このうち JIS8, JUNET 等は Samba で用いられている漢字コードです。 SJIS, sjis Shift JIS EUC, euc EUC 漢字 JIS, jis 7bit JIS JIS8, jis8 8bit JIS JUNET, junet ISO-2022-JP OJIS, ojis 7bit JIS (JIS C6226-1978 + roman) OJIS8, ojis8 8bit JIS (JIS C6226-1978 + roman) OJUNET, ojunet ISO-2022-JP (JIS C6226-1978 + roman) UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 en, C, POSIX 英語 (メッセージのみ) デフォルト 変換しない (MS-DOS 版では英語メッセージの選択のみ有効です。 ) LINENO* 現在の行番号を示します。シェルスクリプトや関数 の中以外の箇所では、意味を持つ値である保証はあ りません。また、この値を unset したり再定義す ると、この変数の特殊な意味は失われ、一般の変数 と同等の扱いになります。 LINES* 端末画面の行数を示す変数として利用します。何ら かの値が設定されていた場合、画面サイズの変更に 応じてその値を自動的に置換えます。何も値が設定 されていない場合は設定されないままです。 LOGFILE LOGLEVEL や ROOTLOGLEVEL で指定したレベルのロ グを出力するファイル名を指定します。フルパスで 指定されなかった場合は、実効ユーザのホームディ レクトリ以下のパスと見なされます。但し、ディレ クトリの自動作成は行なわれませんので、ログファ イルを格納するディレクトリは予め用意しておく必 要があります。デフォルト値は未指定です。 LOGLEVEL ログファイルに出力すべき内容の優先度を指定しま す。デフォルト値は 0 です。 0 出力しない 1 書込みなど警告レベルの出力のみ 2 属性変更など通知レベル以上の出力 3 参照など報告レベル以上の出力 4 以上 デバッグレベル以上の出力 但し、同じ操作を行なってもその結果がエラーにな った場合は、一つレベルの低い優先度でも出力され ます。 LOGSIZE LOGFILE で指定したログファイルの最大サイズをキ ロバイト単位で指定します。この値を超えると直前 のログファイルを拡張子 .old を追加したファイル 名に変更してから新たなログファイルを作成します。 デフォルト値は 1024(1MB) です。この値が 0 の時 にはログファイル名の変更をしません。 LOOPCURSOR カーソル移動の際に、カーソルが同一ページ内でル ープするようにします。0 かナル以外の値であれば、 何を定義しても有効です。 MAIL* 内蔵シェルがメイルの新着チェックを行なう際のス プールファイル名を示します。MAILPATH が設定さ れていた場合はそちらが優先されます。(UNIX) MAILCHECK* MAILPATH または MAIL で指定されたスプールファ イルに対する新着チェックの間隔を秒数で指定しま す。デフォルト値は 600 秒です。0 に指定すると、 各プロンプトを表示する度に確認します。(UNIX) MAILPATH* 内蔵シェルがメイルの新着チェックを行なう際のス プールファイル名を : で区切って複数指定します。 ここで列挙された全てのスプールファイルに対して 新着チェックが行なわれます。各ファイル名の後ろ には % に続けて新着時のメッセージを書くことが できます。メッセージ未指定時には you have mail と表示されます。(UNIX) MESSAGELANG 表示するメッセージの言語を指定します。LANGUAGE の設定に優先してここで指定した言語のメッセージ が表示されます。メッセージが日本語の場合の漢字 コードは LANGUAGE の設定値で決定されます。選択 できる言語は以下のとおりですが、これらの文字列 が含まれていれば判別しますので、環境変数 LANG の値をそのまま用いても有効です。また、追加のメ ッセージカタログが用意されている場合は、そのフ ァイルの拡張子をカタログ名として MESSAGELANG に設定することでメッセージの切替を行なうことが できます。 en, C, POSIX 英語 ja 日本語 デフォルト LANGUAGE の設定値 MINFILENAME ファイル一覧リスト内の、ファイル名表示領域の最 小文字数を設定します。端末のカラム数や画面表示 列によって、ここで設定した文字数分だけの領域が 確保できない場合には、UID, GID、タイムスタンプ、 サイズ、の順で情報を減じていきます。デフォルト 値は 12 文字です。 OPTARG* 組込みコマンド getopts でオプションの引数が代 入されます。 OPTIND* 組込みコマンド getopts で次に展開するパラメー タの位置を指定します。初期値は 1 です。 PAGER ファイルの閲覧時に使用するページャコマンドを指 定します。 PATH* 外部コマンド実行時の検索パスを指定します。':' で区切って複数の検索パス名を指定できます。 PPID* 最初に起動した fd の親プロセスのプロセス ID を 示します。(UNIX) PRECEDEPATH /dev のように数多くのファイルを抱えているディ レクトリに対し、ファイル情報を調べるより先にフ ァイル名だけでも画面表示させてしまう先行ファイ ル表示機能を指示します。':' で区切って複数のパ ス名を指定できます。各パス名の指定は、先行ファ イル表示機能を実現させたいトップディレクトリだ けを記述すれば、それ以下のディレクトリでは全て 先行ファイル表示機能が働きます。先行ファイル表 示機能が働くと、そのディレクトリではファイルは ソートされず、キー入力待ち状態の間に少しずつフ ァイル情報を調べていきます。デフォルトではパス 名は一つも指定されていません。 PRECOPYMENU 複数ファイルのコピー、移動、及び削除の際に、処 理が始まる前にメニューを表示し、同名ファイルや アクセス制限ファイルが存在した時の処理をどうす るかを問い合わせます。対象ファイルが多い場合に、 処理が始まって暫く経ってから問い合わせが発生す ることを防ぎます。0 かナル以外の値であれば、何 を定義しても有効です。 PROGRESSBAR ファイルのコピー、移動、及び削除の際に、進捗状 況を示すプログレスバーを表示します。但し、進捗 度を計算する時間が必要なので、プログレスバーを 表示しない時と比べて若干処理時間が長くなります。 0 かナル以外の値であれば、何を定義しても有効で す。 PS1 EXECUTE_SH の入力ラインのプロンプト文字列を指 定します。デフォルト値は "$ " です。この文字列 内には以下のエスケープ文字列が使用できます。 \u ユーザ名 (UNIX) \h ホスト名 (UNIX) \H ホスト名 (ドメイン名を含む) (UNIX) \w カレントディレクトリのフルパス \~ カレントディレクトリのフルパス (ホームディレクトリを ~ で簡略表示) \W カレントディレクトリ名 \! コマンド履歴番号 \$ root 時のみ # それ以外では $ (UNIX) \[ 非印字文字列の開始 (端末制御文字等) \] 非印字文字列の終了 \e ESC (\033) \ooo 8 進数表記 ooo で表される文字 \\ \ 自身 PS2 EXECUTE_SH 実行時にまだ継続して入力が必要な時 のプロンプト文字列を指定します。デフォルト値は "> " です。 PS4* set -x 指定時にコマンド文字列を表示する際のプ ロンプト文字列を指定します。デフォルト値は "+ " です。 PTYINKCODE 疑似端末に入力として渡す文字列の漢字コードを指 定します。疑似端末上で稼働している全てのプロセ スには、INPUTKCODE で指定した漢字コードからこ こで指定した漢字コードにコンバートされた文字列 が入力されます。但し、この変数は疑似端末毎に独 立の値を持つため、既に稼働中の疑似端末の入力漢 字コードを変更する場合には、その端末内で変数値 を変更しないと効果がありません。(UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 デフォルト 変換しない PTYMENUKEY 疑似端末を操作している最中に疑似端末メニューを 開くためのキーを指定します。設定値には bind コ マンドと同様のキー名を用いることができます。疑 似端末メニューでは、「この文字を送出」「文字コ ード入力」「強制終了」「ウィンドウ移動」「漢字」 の各項目が選択可能です。それぞれ、疑似端末メニ ューキー自身の送出、送出する文字をキー名で入力、 疑似端末で稼働中のプロセスを強制的に終了、ウィ ンドウ間の移動、かな漢字変換入力、を行ないます。 「文字コード入力」では bind コマンドと同様のキ ー名のほか、かな漢字変換入力で用いる漢字コード 番号による文字の指定ができます。但し、ウィンド ウ非分割モードでは「ウィンドウ移動」項目は選択 できません。デフォルト値は未指定です。(UNIX) PTYMODE 外部コマンドの起動に疑似端末を用います。ウィン ドウ分割モードでは各ウィンドウ毎に独立した疑似 端末を用いますので、同時に複数の外部コマンドを 端末から操作することができます。但し、使用して いる端末が端末エミュレーションに必要な機能を備 えていない場合は疑似端末が正しく機能しないこと があります。0 かナル以外の値であれば、何を定義 しても有効です。(UNIX) PTYOUTKCODE 疑似端末から出力として渡される文字列の漢字コー ドを指定します。疑似端末上で稼働している全ての プロセスからは、ここで指定した漢字コードから LANGUAGE で指定した漢字コードにコンバートされ た文字列が表示されます。但し、この変数は疑似端 末毎に独立の値を持つため、既に稼働中の疑似端末 の出力漢字コードを変更する場合には、その端末内 で変数値を変更しないと効果がありません。(UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 デフォルト 変換しない PTYTERM 疑似端末を用いた場合に外部コマンドに渡す環境変 数 TERM の値を指定します。termcap(5) や terminfo(5) の設定によっては疑似端末の挙動が期 待通りでない場合もあるので、その環境で有効な端 末名を指定して下さい。デフォルト値は vt100 で す。(UNIX) PWD* カレントディレクトリの絶対パス名を示す変数とし て利用します。何らかの値が設定されていた場合、 カレントディレクトリの変更に応じてその値を自動 的に置換えます。何も値が設定されていない場合は 設定されないままです。また、起動時に環境変数と して与えられた場合には、この値とカレントディレ クトリとが論理的に同じディレクトリを指す場合に 限り、この値をカレントディレクトリの初期値とし て扱います。シンボリックリンクを辿った論理的な パス名を指定したい時に有用でしょう。 ROOTLOGLEVEL 実効ユーザがスーパユーザの場合に、ログファイル に出力すべき内容の優先度を指定します。デフォル ト値は 1 です。(UNIX) 0 出力しない 1 書込みなど警告レベルの出力のみ 2 属性変更など通知レベル以上の出力 3 参照など報告レベル以上の出力 4 以上 デバッグレベル以上の出力 但し、同じ操作を行なってもその結果がエラーにな った場合は、一つレベルの低い優先度でも出力され ます。 RRPATH ISO 9660 RockRidge 拡張に対応していない OS 用 に、CD-ROM のマウントされているディレクトリ以 下のファイルを疑似的に RockRidge 拡張して表示 します。':' で区切って複数のマウントポイントを 指定できます。各マウントポイントの指定は、CD- ROM がマウントされているトップディレクトリだけ を記述すれば、それ以下のディレクトリでは全て疑 似 RockRidge 拡張機能が働きます。但し、飽くま でもこれは疑似的な拡張で、TRANS.TBL ファイルを 参照してファイル名の置換えをしているに過ぎませ んので、TRANS.TBL が不整合な一部の CD-ROM では 正しく機能しません。デフォルトではマウントポイ ントは一つも指定されていません。 SAVEDIRHIST ディレクトリ履歴セーブファイルに保存する数の上 限を設定します。デフォルト値は 50 個です。この 値が 0 の時にはセーブファイルを作成しません。 SAVEHIST コマンド履歴セーブファイルに保存する数の上限を 設定します。デフォルト値は 50 個です。この値が 0 の時にはセーブファイルを作成しません。 SECOND タイトル行の時計に秒針を表示させるようにします。 但し、正確に時計が調整されるのは 10 秒おきなの で、その間は実時間とのずれが生じています。0 か ナル以外の値であれば、何を定義しても有効です。 SHELL ここで指定された値のファイル名部分が rfd また は rfdsh である場合には、起動時の -r オプショ ンと同様、シェルの機能が一部制限されます。また、 EXECUTE_SH コマンドから起動できるシェルを指定 します。 SIZEINFO ファイルサイズ情報行を画面上端に表示させるよう にします。但し、ここで表示されるトータルサイズ は単純にバイト数を合計したものではなく、実際に ディスクを占有しているブロックサイズ単位で合計 したものになります。0 かナル以外の値であれば、 何を定義しても有効です。 SIZEUNIT ファイルサイズ表示の際に、表示桁数に収まり切れ ない大きな値を SI 単位系の接頭子を用いて「KB」 「MB」のような表現で表します。0 かナル以外の値 であれば、何を定義しても有効です。 SORTTREE ツリー表示画面でディレクトリの並びをソートする ようにします。ソートタイプは SORT_DIR で指定し たものを用いますが、「サイズ順」及び「日付順」 になっている場合はソートできません。また、カレ ントディレクトリパスに含まれるディレクトリは、 ソートタイプに関係なく常にツリー構造の先頭に来 ます。0 かナル以外の値であれば、何を定義しても 有効です。 SORTTYPE ブラウザ画面のファイル一覧リストは、デフォルト ではソートしないようになっていますので、ディレ クトリ内に登録されている順に並べられています。 これを、デフォルトでソートするように定義します。 設定する値は以下のとおり。 0 ソートしない 1 名前順 9 名前順(逆順) 2 拡張子順 10 拡張子順(逆順) 3 サイズ順 11 サイズ順(逆順) 4 日付順 12 日付順(逆順) 5 長さ順 13 長さ順(逆順) 100-113 直前のソート形式を保持 200-213 アーカイブブラウザ内でも保持 100 〜 113 の値を設定した場合、起動直後は下 2 桁で表される数値のソート形式になりますが、ディ レクトリ移動などの際にはデフォルトのソート形式 ではなく、その直前に指定したソート形式が保持さ れるようになります。更に 200 〜 213 の値を設定 した場合、アーカイブブラウザを起動した際にも直 前のソート形式が保持されるようになります。 TERM* 端末名を指定します。この値が dumb, unknown, un のいずれかの場合には、ダム端末と見なし DUMBSHELL の値に関係なく内蔵シェルでエスケープ シーケンスを用いることを抑制します。また、この 値が termcap(5) や terminfo(5) に登録されてい なかった場合、fdsh として起動された時のみ実行 可能です。端末名は動的に変更可能ですので、端末 表示やキー入力の挙動がおかしい時は、起動後にこ の値を適切なものに再設定して下さい。 THRUARGS fd 起動時の引数として指定されたパス名をそのま まの文字列として素通しします。旧式の低機能シェ ルでは ~ や ${#} といった POSIX 拡張の展開に対 応していないため、fd は与えられたパス名に含ま れるこれらのメタキャラを自身で展開しています。 しかし、最近の高機能シェルではこれらの展開は一 般的に対応しているため、シェルから与えられたパ ス名を fd が展開してしまうと二重に展開した結果 期待しない文字列に変換することがあります。この 引数展開を抑制するのがこの変数です。0 かナル以 外の値であれば、何を定義しても有効です。 TMPDIR アーカイバコマンドが、アーカイブファイル内のフ ァイルを一時的に伸長するための作業ディレクトリ を設定します。デフォルト値は /tmp です。 (MS-DOS 版でのデフォルト値は `.' となります。) TMPUMASK TMPDIR に一時的に作成されるファイル及びディレ クトリのファイル生成マスク値を 8 進数表記で指 定します。但し、組込みコマンド umask で設定し たマスク値が優先されますので、実際に用いられる マスク値はこの値と umask 値との論理和になりま す。 TRADLAYOUT オリジナル版の『FD』準拠の画面レイアウトにし ます。このレイアウトでは、SIZEINFO 指定の有無 に拘らずファイルサイズ情報が表示されます。但し、 画面の横幅が 80 桁以上ない場合にはこの指定は無 効となります。0 かナル以外の値であれば、何を定 義しても有効です。 UNICODEBUFFER UNICODE 変換テーブルをオンメモリで持ち続けるよ うにします。フロッピードライブのアクセスや UTF-8 の変換が高速化するので、メモリ資源が潤沢 にある環境では有用でしょう。0 かナル以外の値で あれば、何を定義しても有効です。 URLDRIVE URL ドライブ機能を有効にします。0 かナル以外の 値であれば、何を定義しても有効です。(UNIX) URLKCODE URL ドライブでホスト側のファイル名に用いる漢字 コードを指定します。このうち JIS8, JUNET, HEX, CAP 等は Samba で用いられている漢字コードです。 (UNIX) SJIS, sjis Shift JIS EUC, euc EUC 漢字 JIS, jis 7bit JIS JIS8, jis8 8bit JIS JUNET, junet ISO-2022-JP OJIS, ojis 7bit JIS (JIS C6226-1978 + roman) OJIS8, ojis8 8bit JIS (JIS C6226-1978 + roman) OJUNET, ojunet ISO-2022-JP (JIS C6226-1978 + roman) HEX, hex HEX CAP, cap CAP UTF8, utf8 UTF-8 UTF8-mac, mac Mac OS X 用 UTF-8 UTF8-iconv iconv 用 UTF-8 デフォルト 変換しない URLOPTIONS URL ドライブでホストと通信を行なう際の通信オプ ションを指定します。FTP 通信の際に PASV, PORT, MDTM, FEAT の各コマンドを禁止するか否か、また HTTP 通信の際に正確なファイル情報を取得するか 否かを、それぞれ独立に選択できます。HTTP プロ トコルでは、ファイル情報をまとめて取得すると時 刻やサイズが丸め誤差を含む値になってしまいます が、正確な情報を取得するにはファイル一個ずつの 処理が必要なので余分の通信時間を要します。デフ ォルト値は 0 です。設定する値は以下のとおり。 (UNIX) 0 標準 1 PASV 2 PORT 3 PASV & PORT 4 MDTM 5 PASV & MDTM 6 PORT & MDTM 7 PASV & PORT & MDTM 8 FEAT 9 PASV & FEAT 10 PORT & FEAT 11 PASV & PORT & FEAT 12 MDTM & FEAT 13 PASV & MDTM & FEAT 14 PORT & MDTM & FEAT 15 PASV & PORT & MDTM & FEAT 16 HTTP 17 PASV & HTTP 18 PORT & HTTP 19 PASV & PORT & HTTP 20 MDTM & HTTP 21 PASV & MDTM & HTTP 22 PORT & MDTM & HTTP 23 PASV & PORT & MDTM & HTTP 24 FEAT & HTTP 25 PASV & FEAT & HTTP 26 PORT & FEAT & HTTP 27 PASV & PORT & FEAT & HTTP 28 MDTM & FEAT & HTTP 29 PASV & MDTM & FEAT & HTTP 30 PORT & MDTM & FEAT & HTTP 31 PASV & PORT & MDTM & FEAT & HTTP URLTIMEOUT URL ドライブでホストと通信している際のタイムア ウトを秒数で指定します。ここで指定した秒数の間 ホストからの通信が途絶えると、通信が無効になっ たものと見なして強制的に接続を切断します。この 値が 0 秒の時にはタイムアウト処理をせずに永久 に応答を待ち続けます。デフォルト値は 0 秒です。 (UNIX) USEGETCURSOR 端末サイズ取得時に、VT100 互換のカーソル位置取 得エスケープシーケンスを用います。fd の画面サ イズが端末サイズと一致しないような場合は、これ を有効にすると一致することがあります。カーソル 位置取得エスケープシーケンスに対応していない端 末では処理が止まってしまうこともありますので、 このような時は、キーボードから 'R' の文字を入 力してやると復帰します。0 かナル以外の値であれ ば、何を定義しても有効です。(UNIX) USESYSLOG LOGLEVEL や ROOTLOGLEVEL で指定したレベルのロ グをシステムロガー syslogd(8) に出力します。エ ラー時のみログ優先度は LOG_ERR となり、それ以 外のログ優先度は全て LOG_INFO です。facility の指定できる環境では LOG_USER が用いられます。 0 かナル以外の値であれば、何を定義しても有効で す。 (UNIX) WIDEDIGIT ページ数やファイル数を表示する桁数を増やします。 標準ではページ数とファイル数はそれぞれ 2 桁と 4 桁で表示されますが、これをそれぞれ 4 桁と 5 桁に拡張します。0 かナル以外の値であれば、何を 定義しても有効です。 WRITEFS WRITE_DIR コマンドの使用を禁止します。値を 1 にすると、明示的にコマンドが実行された時のみデ ィレクトリに対して書込みを行ない、並び替えの後 に書込みの問い合わせをしてこないようになります。 値を 2 にすると、コマンドでの実行すら無効にな り、ディレクトリの書込みが一切禁止されます。 SJISPATH EUCPATH JISPATH JIS8PATH JUNETPATH OJISPATH OJIS8PATH OJUNETPATH HEXPATH CAPPATH UTF8PATH UTF8MACPATH UTF8ICONVPATH NOCONVPATH ファイル名に用いる漢字コードを、ディレクトリ単 位で FNAMEKCODE 以外のものにしたい時に指定しま す。':' で区切って複数のパス名を指定できます。 各パス名の指定は、その漢字コードを使用したいト ップディレクトリだけを記述すれば、それ以下のデ ィレクトリでは全てその漢字コードのファイル名が 使えます。NOCONVPATH に記述されているディレク トリでは、FNAMEKCODE の指定を無視して一切漢字 コードの変換を行ないません。デフォルトではどれ もパス名は一つも指定されていません。(UNIX) 多国語対応 コンパイル時の設定により、「EUC 漢字」と「Shift JIS」で漢字 を入出力できます。漢字を含むパス名の表示には、漢字の 2byte 目に対する考慮がされています。入出力に関しては、内部変数 LANGUAGE, INPUTKCODE 及び FNAMEKCODE により、動的に漢字コー ドを選択できます。文字列の入力では、かな漢字変換入力モードを 用いて日本語文字列の入力が可能です。 コマンドマクロやコマンド文字列内に漢字は使用できますが、内部 変数の値には漢字は使用できません。'%' や '”' など、2bytes 文字の記号は、メタキャラクタなどの記号としては用いることがで きません。ワイルドカードの検索では、漢字は 1 文字として見な されません。 また、%JJ などのパラメータマクロを用いて OS 非標準の漢字コー ドをシェルに渡した場合、漢字によっては変換後のコードが '$' や '\' といったシェルのメタキャラを含んでしまい、期待した動 作を示さないことがあります。このような場合、大抵は %' で変換 したい文字列部分を括ってやることで回避できます。 著者 白井 隆 。MS-DOS 用に作られたオリジナ ルの『FD』は、A.Idei 氏によっ て 1989 年に最初に作成、公開されました。fd はこのインプリメ ントを模して、1995 年に UNIX 用に一から新たに作成されました。 関連ファイル /etc/fd2rc システム共通の fd 初期設定ファイル ~/.fd2rc 個人用の fd 初期設定ファイル ~/.fdshrc 個人用の fdsh 初期設定ファイル ~/.fd_history コマンド履歴のセーブファイル既定値 ~/.fd_freq かな漢字変換学習用のユーザ変換頻度ファイル既定値 /bin/sh 環境変数 SHELL が未定義だった場合のユーザシェル /bin/rm 異常終了時に不要ファイルを消去するためのコマンド /tmp/fd* アーカイブファイル伸長のための一時的ディレクトリ fd-unicd.tbl fd の起動ディレクトリにインストールされる UNICODE 変換テーブル fd-dict.tbl fd の起動ディレクトリにインストールされるかな漢字 変換辞書ファイル fd2rc fd の起動ディレクトリに用意しておく MS-DOS 版での 共通 fd 初期設定ファイル $HOME\fd2.rc MS-DOS 版での個人用の fd 初期設定ファイル $HOME\fdsh.rc MS-DOS 版での個人用の fdsh 初期設定ファイル $HOME\fd.hst MS-DOS 版でのコマンド履歴のセーブファイル既定値 制限事項 端末の種類によって、一部のファンクションキーや特殊キーの入力 ができないことがあります。termcap(5) に登録されていない機能 のデフォルトシーケンスは、VT200 互換のシーケンスを採用してい ますが、端末がこれに対応できていない場合は、その機能を用いた キーの取得や画面制御ができません。 関連事項 echo(1), test(1), ls(1), rm(1), tar(1), compress(1), zcat(1), gzip(1), gunzip(1), lha(1), login(1), newgrp(1), stty(1), umask(2), termcap(5), terminfo(5), syslogd(8) バグ アーカイブファイル内に ".." を含んだパス名で圧縮してある場合 は、アーカイブブラウザが正常に働きません。アーカイブファイル 内の symbolic リンクは個別に展開できません。 ユーザインタフェースが稚拙です。 著作権 Copyright (C) 1995-2019 by Takashi SHIRAI