Unix-commands-csh

提供:Dev Guides
移動先:案内検索

csh-Unix、Linuxコマンド

link:/unix_commands/index [previous] link:/unix_commands/index [next] [[1]] php [AddThis Social Bookmark Button]

NAME

概要

*tcsh*  *-bcdefFimnqstvVxX-Dname = valuetcsh -l*

説明

tcshcsh コマンドラインエディター補完とリストスペル修正履歴置換link:#10 [Jobs] NEW FEATURES _ tcshcshtcshcshcshcsh_

引数リストの処理

-l

フラグ引数の残りは次のように解釈されます:

Tag

説明

-b

オプション処理から「ブレーク」を強制し、それ以降のシェル引数は非オプション引数として扱われます。 残りの引数はシェルオプションとして解釈されません。 これは、混乱や混乱を招くことなく、オプションをシェルスクリプトに渡すために使用できます。 このオプションなしでは、シェルはユーザーID設定スクリプトを実行しません。

-c

コマンドは、次の引数(存在し、単一の引数である必要があります)から読み取られ、参照用の command シェル変数に格納され、実行されます。 残りの引数はすべて argv シェル変数に配置されます。

-d

シェルは、ログインシェルであるかどうかに関係なく、「起動とシャットダウン」で説明したように、_〜/.cshdirs_からディレクトリスタックをロードします。 (+)

-D name [= value]

環境変数_name_を_value_に設定します。 (ドメイン/OSのみ)(+)

-e

呼び出されたコマンドが異常終了するか、ゼロ以外の終了ステータスになると、シェルは終了します。

-f

シェルは_〜/.tcshrc_を無視するため、より速く起動します。

-F

シェルは、vfork(2)ではなく_fork_(2)を使用してプロセスを生成します。 (Convex/OSのみ)(+)

-i

シェルは対話型であり、端末ではないように見える場合でも、トップレベルの入力を要求します。 シェルは、入力と出力がターミナルである場合、このオプションなしでインタラクティブです。

-l

シェルはログインシェルです。 指定されるフラグが -l のみである場合にのみ適用されます。

-m

シェルは、有効なユーザーに属していない場合でも_〜/.tcshrc_をロードします。 su(1)の新しいバージョンは、シェルに -m を渡すことができます。 (+)

-n

シェルはコマンドを解析しますが、実行しません。 これは、シェルスクリプトのデバッグに役立ちます。

-q

シェルはSIGQUIT(*シグナル処理*を参照)を受け入れ、デバッガーで使用されるときに動作します。 ジョブ制御は無効です。 (u)

-s

コマンド入力は標準入力から取得されます。

-t

シェルは、1行の入力を読み取って実行します。 「#146;この行の最後で改行をエスケープし、別の行に進むために使用できます。

-v

*verbose* シェル変数を設定して、履歴置換後にコマンド入力がエコーされるようにします。

-x

*echo* シェル変数を設定して、コマンドが実行の直前にエコーされるようにします。

-V

_〜/.tcshrc_を実行する前でも verbose シェル変数を設定します。

-X

*-V* が *-v* のように *-x* になります。
  • - 助けて*

標準出力にヘルプメッセージを出力して終了します。 (+)

  • - バージョン*

バージョン/プラットフォーム/コンパイルオプションを標準出力に出力して終了します。 この情報は、 version シェル変数にも含まれています。 (+)

*-c-i-s-t*

残りの引数は、 argv シェル変数に配置されます。

起動とシャットダウン

/etc/csh.cshrc/etc/csh.login * home 〜/.tcshrc〜/.tcshrc〜/.cshrc〜/.history histfile 〜/.login〜/.cshdirs dirsfile /etc/csh.login/etc/csh.cshrc〜/.login〜/.tcshrc〜/.cshrc〜/.history version *

非ログインシェルは、起動時に_/etc/csh.cshrc_および_〜/.tcshrc_または_〜/.cshrc_のみを読み取ります。

スタートアップファイルの例については、_http://tcshrc.sourceforge.net_を参照してください。

ログインごとに1回だけ実行する必要がある_stty_(1)や_tset_(1)などのコマンドは、通常、1つの_〜/.login_ファイルに入れます。 csh(1)と_tcsh_の両方で同じファイルのセットを使用する必要があるユーザーは、tcsh_固有のコマンドを使用する前に tcsh シェル変数(qv)の存在を確認する〜/.cshrc_のみを持つことができます。 〜/.cshrc_と〜/.tcshrc_の両方を持つことができます。これらはsources(組み込みコマンドを参照)〜/.cshrc_です。 このマニュアルの残りの部分では、「〜/.tcshrc_」または「〜/.tcshrc_が見つからない場合は〜/.cshrc_」を意味する「〜/.tcshrc」を使用します。

通常の場合、シェルは端末からコマンドの読み取りを開始し、「>」でプロンプトを表示します。 (コマンドスクリプトを含むファイルを処理するための引数の処理とシェルの使用については、後で説明します。)シェルは、コマンド入力の行を繰り返し読み取り、単語に分割し、コマンド履歴リストに配置し、解析して各コマンドを実行します行に。

空の行に「^ D」、「logout」または「login」と入力するか、シェルの自動ログアウトメカニズムを使用してログアウトできます( autologout シェル変数を参照)。 ログインシェルが終了すると、 logout シェル変数を適切に「通常」または「自動」に設定し、ファイル_/etc/csh.logout_および_〜/.logout_からコマンドを実行します。 シェルは、コンパイルされている場合、ログアウト時にDTRをドロップする場合があります。 version シェル変数を参照してください。

システムのログインファイルとログアウトファイルの名前は、さまざまな_csh_(1)バリアントとの互換性のためにシステムごとに異なります。 link:#13 [FILES] を参照してください。

編集

  • コマンドラインエディター補完と一覧表示スペル修正エディターコマンド *

コマンドラインエディター(+)

vi* edit bindkey version * _ bindkeyvi_

シェルは常に( TERMCAP 環境変数で定義されているように)矢印キーを

Tag Description
down down-history
up up-history
left backward-char
right forward-char

そうしないと、別の単一文字バインディングが変更されます。 これらのバインドを防ぐために、_settc_を使用して矢印キーのエスケープシーケンスを空の文字列に設定できます。 矢印キーのANSI/VT100シーケンスは常にバインドされています。

他のキーバインディングは、ほとんどの場合、Emacsおよび_vi_(1)ユーザーが期待するものであり、_bindkey_で簡単に表示できるため、ここにリストする必要はありません。 同様に、_bindkey_は、エディターコマンドとそれぞれの簡単な説明を一覧表示できます。

エディタコマンドには、シェルと同じ「単語」の概念がないことに注意してください。 エディターは、シェル変数 wordchars にない英数字以外の文字で単語を区切りますが、シェルは Lexical structure の下にリストされている空白とそれに特別な意味を持つ文字のみを認識します。

完了とリスト(+)

complete-word * addsuffix *

完了は、最後だけでなく、行のどこでも機能します。完成したテキストは、行の残りを右にプッシュします。 単語の途中で完了すると、多くの場合、カーソルの右側に残っている文字を削除する必要があります。

コマンドと変数はほぼ同じ方法で完成できます。 たとえば、「em」で始まるシステムのコマンドが「emacs」のみである場合、「em [tab]」と入力すると「em」から「emacs」が完成します。 完了により、 path の任意のディレクトリで、またはフルパス名が指定されている場合、コマンドを見つけることができます。 「ar」で始まる変数が他にない場合、「echo $ ar [tab]」と入力すると、「$ ar」から「$ argv」が完了します。

シェルは、入力バッファを解析して、補完する単語をファイル名、コマンド、または変数として補完する必要があるかどうかを判断します。 バッファ内の最初の単語と、「;」、「|」、「|&」、「&&」、または「||」に続く最初の単語は、コマンドと見なされます。 「$」で始まる単語は変数と見なされます。 それ以外はファイル名です。 空の行は、ファイル名として「完成」しています。

「^ D」と入力して_delete-char-or-list-or-eof_ editorコマンドを実行すると、いつでも単語の補完候補を一覧表示できます。 シェルは、_ls-F_ビルトイン(q.v.)を使用して可能な補完をリストし、プロンプトと未完成のコマンドラインを再印刷します。次に例を示します。

Tag

説明

ls/usr/l [^ D] lbin/lib/local/lost + found/> ls/usr/l

オートリスト

Tag

説明

>オートリストを設定> nm/usr/lib/libt [tab] libtermcap.a @ libtermlib.a @> nm/usr/lib/libterm

オートリスト

完成するファイル名には、変数、「〜」で短縮された自分のホームディレクトリ( Filename substitution を参照)、および「=」で短縮されたディレクトリスタックエントリ( Directory stack substitution を参照)を含めることができます。 例えば、

Tag

説明

ls〜k [^ D] kahn kas kellogg> ls〜ke [tab]> ls〜kellogg/

Tag

説明

set local =/usr/local> ls $ lo [tab]> ls $ local/[^ D] bin/etc/lib/man/src/> ls $ local/

expand-variables

delete-char-or-list-or-eof_は行末のみにリストします。行の途中でカーソルの下の文字を削除し、空の行ではログアウトします。 ignoreeof が設定されている場合は何もしません。 エディターコマンド_list-choices_にバインドされた 'M- ^ D’は、行の任意の場所で補完候補をリストし、_list-choices(または削除、リスト、および/またはログを記録する、またはしない関連するエディターコマンドのいずれか_delete-char-or-list-or-eof_の下にリストされている)は、必要に応じて_bindkey_組み込みコマンドで '^ D’にバインドできます。

_complete-word-fwd_および_complete-word-back_エディターコマンド(デフォルトではキーにバインドされていません)を使用して、可能な補完のリストを上下に切り替え、現在の単語を次の単語または前の単語に置き換えますリスト。

シェル変数 fignore は、補完によって無視されるサフィックスのリストに設定できます。 次の点を考慮してください。

Tag

説明

ls Makefile condiments.h〜main.o side.c README main.c meat side.o condiments.h main.c〜> set fignore =(.o \〜)> emacs ma [^ D] main.c main。 c〜main.o> emacs ma [tab]> emacs main.c

*fignorehomeFilename置換fignore*
*complete* シェル変数が 'enhance'に設定されている場合、完了1)大文字と小文字を無視し、2)ピリオド、ハイフン、およびアンダースコア( '。'、 '-'、および '_')を単語区切り文字およびハイフンとアンダースコアと見なします同等である。 次のファイルがある場合

Tag

説明

comp.lang.c comp.lang.perl comp.std.c comp.lang.c comp.std.c

Tag

説明

A_silly_file a-hyphenated-file another_silly_file

完了とリストは、他のいくつかのシェル変数の影響を受けます。 recexact は、より多くの入力でより長い一致が発生する可能性がある場合でも、最短の一意の一致で完了するように設定できます。

Tag

説明

ls fodder foo food foonly> set recexact> rm fo [tab]

Tag

説明

rm foo [タブ]> rm foo

  • autoexpand expand-history autocorrectSpellingcorrectcorrectmatchbeepnobeepnostat stat listmaxlistmaxrowsrecognize_only_executables *

最後に、組み込みコマンド_complete_を使用して、ファイル名、コマンド、変数以外の単語を補完する方法をシェルに指示できます。 補完とリストはグロブパターンでは機能しませんが(*ファイル名の置換*を参照)、_ list-glob_および_expand-glob_エディターコマンドはグロブパターンと同等の機能を実行します。

スペルチェック(+)

個々の単語は、spell-word_エディターコマンド(通常はM-sおよびM-Sにバインド)および_spell-line(通常はM- $にバインド)を使用してスペルを修正できます。 correct シェル変数を 'cmd’に設定してコマンド名を修正するか、 'all’を設定してリターンが入力されるたびに行全体を修正し、 autocorrect を設定して完了前に完了する単語を修正できます試みます。

これらの方法のいずれかでスペル修正が呼び出され、シェルがコマンドラインの一部のスペルが間違っていると判断した場合、修正された行でプロンプトが表示されます。

Tag

説明

>正しい設定= cmd> lz/usr/bin CORRECT> ls/usr/bin(y | n | e | a)?

スペル修正はユーザー定義の補完を認識します(組み込みコマンド_complete_を参照)。 補完が定義されている位置の入力単語が補完リストの単語に似ている場合、スペル修正はミススペルを登録し、後者の単語を修正として提案します。 ただし、入力ワードがその位置の可能な補完のいずれとも一致しない場合、スペル修正はスペルミスを登録しません。

補完と同様に、スペル修正は行のどこでも機能し、行の残りを右にプッシュし、場合によってはカーソルの右側に余分な文字を残します。

注意:スペルの修正は、意図したとおりに機能することは保証されていません。主に実験的な機能として提供されています。 提案や改善を歓迎します。

エディターコマンド(+)

emacsvi

各コマンドがデフォルトでバインドされる文字は、括弧内に示されています。 「^ character」は制御文字を意味し、「M-character」はメタ文字を意味し、メタキーのない端末ではescape-_character_として入力されます。 ケースはカウントされますが、デフォルトで文字にバインドされているコマンドは、便宜上大文字と小文字の両方にバインドされています。

Tag

説明

完全な単語(タブ)

  • 完了とリスト*で説明されているとおりに単語を補完します。

完全なワードバック(バインドされていません)

_complete-word-fwd_に似ていますが、リストの最後からステップアップします。

*complete-word-fwd* (バインドされていません)

現在の単語を、補完候補のリストの最初の単語に置き換えます。 リストをステップダウンするために繰り返される場合があります。 リストの最後でビープ音が鳴り、不完全な単語に戻ります。

完全な単語の生(^ X-tab)

_complete-word_に似ていますが、ユーザー定義の補完を無視します。

*copy-prev-word* (M-^ _)

現在の行の前の単語を入力バッファにコピーします。 _insert-last-word_も参照してください。

*dabbrev-expand* (M-/)

現在の単語を、現在が先頭の部分文字列である最新の直前の単語に展開し、必要に応じて履歴リストを(1回)折り返します。 次の前の単語などにタイプ変更を介在させずに_dabbrev-expand_を繰り返し、_history-search-backward_のように同一の一致をスキップします。

*delete-char* (バインドされていません)

カーソルの下の文字を削除します。 _delete-char-or-list-or-eof_もご覧ください。

*delete-char-or-eof* (バインドされていません)

カーソルの下に文字がある場合、または空行に_end-of-file_がある場合、_delete-char_を実行します。 _delete-char-or-list-or-eof_もご覧ください。

*delete-char-or-list* (バインドされていません)

カーソルの下に文字がある場合は_delete-char_を、行末に_list-choices_を実行します。 _delete-char-or-list-or-eof_もご覧ください。

*delete-char-or-list-or-eof* (^ D)

カーソルの下に文字がある場合は_delete-char_を、行の最後に_list-choices_を、空の行には_end-of-file_を実行します。 それぞれが単一のアクションのみを実行するこれらの3つのコマンド、および_delete-char-or-eof delete-char-or-list_および_list-or-eof_も参照してください。

ダウン履歴(下矢印、^ N)

_up-history_に似ていますが、元の入力行で停止します。

ファイルの終わり(バインドされていません)

これを防ぐために ignoreeof シェル変数(q.v.)が設定されていない限り、ファイルの終わりを通知してシェルを終了します。 _delete-char-or-list-or-eof_もご覧ください。

*expand-history* (M-space)

現在の単語の履歴置換を展開します。 History substitution を参照してください。 magic-space _、 toggle-literal-history_、および autoexpand シェル変数も参照してください。

*expand-glob* (^ X- *)

glob-patternをカーソルの左側に展開します。 *ファイル名の置換*を参照してください。

*expand-line* (バインドされていません)

_expand-history_に似ていますが、入力バッファ内の各単語の履歴置換を展開します。

展開変数(^ X- $)

変数をカーソルの左側に展開します。 *変数置換*を参照してください。

*history-search-backward* (M-p、M-P)

入力バッファの現在の内容からカーソルまでのコマンドを履歴リストで逆方向に検索し、入力バッファにコピーします。 検索文字列は、「*」、「?」、「[]」、または「\ {}」を含むグロブパターン(*ファイル名の置換*を参照)にすることができます。 _up-history_および_down-history_は、履歴リストの適切なポイントから続行します。 Emacsモードのみ。 _history-search-forward_および_i-search-back_も参照してください。

*history-search-forward* (M-n、M-N)

_history-search-backward_に似ていますが、前方に検索します。

*i-search-back* (バインドされていません)

_history-search-backward_のように逆方向に検索し、最初の一致をカーソルをパターンの最後に配置して入力バッファーにコピーし、「bck:」と最初の一致でプロンプトを表示します。 追加の文字を入力して検索を拡張し、_i-search-back_を入力して同じパターンで検索を続行し、必要に応じて履歴リストを折り返すことができます(これには、_i-search-back_を単一の文字にバインドする必要がありますwork)または次の特殊文字のいずれかを入力できます:

Tag

説明

Tag

説明

^W

カーソルの下の残りの単語を検索パターンに追加します。

削除(または_backward-delete-char_にバインドされた任意の文字)

最後に入力した文字の効果を元に戻し、必要に応じて検索パターンから文字を削除します。

^G

前の検索が成功した場合、検索全体を中止します。 そうでない場合は、最後に成功した検索に戻ります。

エスケープ

検索を終了し、現在の行を入力バッファーに残します。

_self-insert-command_にバインドされていない他の文字は検索を終了し、現在の行を入力バッファーに残してから、通常の入力として解釈されます。 特に、キャリッジリターンを使用すると、現在の行が実行されます。 Emacsモードのみ。 _i-search-fwd_および_history-search-backward_も参照してください。

*i-search-fwd* (バインドされていません)

_i-search-back_に似ていますが、前方に検索します。

最後の単語を挿入(M-_)

前の入力行の最後の単語(「!$」)を入力バッファーに挿入します。 _copy-prev-word_もご覧ください。

リスト選択(M- ^ D)

  • 完了とリスト*で説明されているように、補完候補をリストします。 _delete-char-or-list-or-eof_および_list-choices-raw_も参照してください。
*list-choices-raw* (^ X- ^ D)

_list-choices_に似ていますが、ユーザー定義の補完を無視します。

*list-glob* (^ X-g、^ X-G)

リスト(_ls-F_ビルトインを使用)は、カーソルの左側のglob-pattern(*ファイル名の置換*を参照)に一致します。

*list-or-eof* (バインドされていません)

空の行で_list-choices_または_end-of-file_を実行します。 _delete-char-or-list-or-eof_もご覧ください。

マジックスペース(バインドされていません)

_expand-history_など、現在の行の履歴置換を展開し、スペースを挿入します。 _magic-space_はスペースバーにバインドされるように設計されていますが、デフォルトではバインドされていません。

*normalize-command* (^ X-?)

PATHで現在の単語を検索し、見つかった場合は、実行可能ファイルへのフルパスに置き換えます。 特殊文字は引用符で囲まれています。 エイリアスは展開されて引用されますが、エイリアス内のコマンドはそうではありません。 このコマンドは、「dbx」や「sh -x」などのコマンドを引数として取るコマンドで役立ちます。

*normalize-path* (^ X-n、^ X-N)
*symlinks* シェル変数の「展開」設定で説明されているように、現在の単語を展開します。
*overwrite-mode* (非バインド)

入力モードと上書きモードを切り替えます。

*run-fg-editor* (M- ^ Z)

現在の入力行を保存し、 EDITOR または VISUAL 環境変数のファイル名部分の最後のコンポーネントに等しい名前、またはどちらも設定されていない場合は 'ed’または 'vi’の名前を持つ停止ジョブを探します。 そのようなジョブが見つかった場合、「fg%job」が入力されたかのように再開されます。 これは、エディターとシェルを簡単に切り替えるために使用されます。 一部の人々は、このコマンドを「^ Z」にバインドして、これをさらに簡単に行えるようにします。

*run-help* (M-h、M-H)

完了ルーチンと同じ「現在のコマンド」の概念を使用して、現在のコマンドに関するドキュメントを検索し、印刷します。 ページャーを使用する方法はありません。 run-help_は、短いヘルプファイル用に設計されています。 特別なエイリアス helpcommand が定義されている場合、コマンド名を唯一の引数として実行されます。 それ以外の場合、ドキュメントは_command.help、command.1、command.6、command.8、または_command_という名前のファイルにある必要があります。これらのファイルは、 HPATH 環境変数にリストされているディレクトリの1つにある必要があります。 複数のヘルプファイルがある場合は、最初のファイルのみが出力されます。

*self-insert-command* (テキスト文字)

挿入モード(デフォルト)では、入力された文字を入力行のカーソルの下の文字の後に挿入します。 上書きモードでは、カーソルの下の文字を入力した文字に置き換えます。 通常、入力モードは行間で保持されますが、シェル変数 inputmode を「挿入」または「上書き」に設定して、各行の先頭でエディターをそのモードにすることができます。 _overwrite-mode_も参照してください。

*sequence-lead-in* (矢印プレフィックス、メタプレフィックス、^ X)

次の文字がマルチキーシーケンスの一部であることを示します。 コマンドをマルチキーシーケンスにバインドすると、実際には2つのバインドが作成されます。最初の文字が_sequence-lead-in_に、シーケンス全体がコマンドになります。 _sequence-lead-in_にバインドされた文字で始まるすべてのシーケンスは、別のコマンドにバインドされていない限り、事実上_undefined-key_にバインドされます。

スペルライン(M- $)

_spell-word_のように、入力バッファ内の各単語のスペルを修正しようとしますが、最初の文字が「-」、「!」、「^」、「%」のいずれか、または「#146」を含む単語を無視します。 、「*」または「?」。スイッチ、置換などの問題を回避します。 *スペルチェック*を参照してください。

スペルワード(M-s、MS)

  • スペルチェック*で説明されているように、現在の単語のスペルを修正しようとします。 パス名と思われる単語の各コンポーネントをチェックします。
*toggle-literal-history* (M-r、M-R)

入力バッファ内の履歴置換を展開または「展開解除」します。 _expand-history_および autoexpand シェル変数も参照してください。

*undefined-key* (非バインドキー)

ビープ音。

*up-history* (上矢印、^ P)

履歴リストの前のエントリを入力バッファにコピーします。 histlit が設定されている場合、エントリのリテラル形式を使用します。 繰り返して履歴リストをステップアップし、先頭で停止できます。

*vi-search-back* (?)

検索文字列(_history-search-backward_のようにglobパターンの場合があります)を「?」で入力し、検索して入力バッファーにコピーします。 一致するものが見つからない場合、ベルが鳴ります。 Returnキーを押すと、検索が終了し、入力バッファに最後に一致したものが残ります。 エスケープを押すと検索が終了し、一致が実行されます。 _vi_モードのみ。

*vi-search-fwd* (/)

_vi-search-back_に似ていますが、前方に検索します。

*which-command* (M-?)

入力バッファーの最初のワードで_which_(組み込みコマンドの説明を参照)を実行します。

ヤンクポップ(M-y)

_yank_または別の_yank-pop_の直後に実行すると、ヤンクされた文字列をkillringの次の前の文字列に置き換えます。 これには、このリングが後の_yank_コマンドによって最後に削除されたと見なされるように、killringを回転させる効果もあります。 _yank-pop_を繰り返すと、killringが何度でも繰り返されます。

字句構造

シェルの入力が端末ではない場合、文字「#」を使用してコメントを開始します。 各「#」およびそれが表示される入力行の残りは、さらに解析する前に破棄されます。

特殊文字(空白またはタブを含む)は、その前にバックスラッシュ( '#146;)を付けるか、単一の文字(' )で囲むことにより、特別な意味を持たないようにすることができます。ダブル( '"')またはバックワード( ')引用符。 引用符で囲まれていない場合は、「#146」が前に付いた改行。は空白に相当しますが、引用符内ではこのシーケンスは改行になります。

さらに、 History substitution を除くすべての link:#4 [Substitutions] (以下を参照)は、文字列(または文字列の一部)を単一引用符で囲むか、重要な文字を引用することで防止できます。 (たとえば、*変数置換*または*コマンド置換*の場合はそれぞれ '$'または ')と'#146;。 (*エイリアス置換*も例外ではありません。_エイリアス_が定義されている単語の文字を引用することは、エイリアスの置換を防ぎます。 エイリアスを引用する通常の方法は、バックスラッシュを前に付けることです。)*履歴の置換*は、バックスラッシュによって防止されますが、単一引用符によっては防止されません。 二重引用符または逆引用符で囲まれた文字列は、*変数置換*および*コマンド置換*を受けますが、他の置換は禁止されます。

一重引用符または二重引用符内のテキストは、単一の単語(またはその一部)になります。 空白やタブを含むこれらの文字列のメタキャラクターは、個別の単語を形成しません。 二重引用符で囲まれた文字列が複数の単語の一部を生成できるのは、1つの特別な場合(下記の*コマンド置換*を参照)のみです。単一引用符で囲まれた文字列は実行されません。 後方引用は特別です:それらは*コマンド置換*(q.v.)を通知します。

複雑な文字列、特に引用文字を含む文字列を引用すると、混乱する可能性があります。 引用文は人間が書いているように使用する必要がないことに注意してください! 文字列全体ではなく、引用を必要とする文字列の部分のみを引用する方が簡単な場合があります。適切な場合は、異なるタイプの引用を使用します。

*backslash_quote* シェル変数(q.v.)を設定して、バックスラッシュが常に「#146 ;、「」」、「 "」を引用するようにすることができます。 (+)これにより、複雑なクォートタスクが簡単になりますが、_csh_(1)スクリプトで構文エラーが発生する可能性があります。

置換

語彙構造

履歴置換

*historyhistdup*

保存されたコマンドには1から順番に番号が付けられ、時刻がスタンプされます。 通常、イベント番号を使用する必要はありませんが、 prompt シェル変数に「!」を入れることで、現在のイベント番号をプロンプトの一部にすることができます。

シェルは実際に、履歴を展開形式およびリテラル(非展開)形式で保存します。 histlit シェル変数が設定されている場合、履歴を表示および保存するコマンドはリテラル形式を使用します。

_history_組み込みコマンドは、いつでも履歴リストを印刷、ファイルに保存、復元およびクリアできます。また、 savehist および histfile シェル変数を設定して、ログアウト時に自動的に履歴リストを保存し、復元することができます。ログイン。

履歴の置換により、履歴リストの単語が入力ストリームに導入され、コマンドを繰り返したり、現在のコマンドで前のコマンドの引数を繰り返したり、前のコマンドのスペルミスを修正したりするのが簡単になります。

履歴置換は、文字「!」で始まります。 入力ストリームのどこからでも開始できますが、ネストしません。 「!」の前に「#146」を付けることができます。その特別な意味を防ぐため。便宜上、「!」の後に空白、タブ、改行、「=」または「(」が続く場合、そのまま渡されます。 入力行が「^」で始まる場合にも履歴の置換が発生します。 この特別な略語については後述します。 histchars シェル変数を設定することにより、履歴置換のシグナルに使用される文字(「!」および「^」)を変更できます。 履歴置換を含む入力行は、実行される前に出力されます。

履歴置換には、単語を取得するイベントを示す「イベント仕様」、選択したイベントから特定の単語を選択する「単語指定子」、および/または「修飾子」があります。 '、選択した単語を操作します。

イベント仕様は

Tag Description
n A number, referring to a particular event
-n An offset, referring to the event n before the current event
# The current event. This should be used carefully in csh(1), where there is no check for recursion. tcsh allows 10 levels of recursion. (+)
! The previous event (equivalent to ‘-1’)
s The most recent event whose first word begins with the string s
?s? The most recent event which contains the string s. The second ‘?’ can be omitted if it is immediately followed by a newline.

たとえば、次の誰かの履歴リストを考えてみましょう。

Tag

説明

9 8:30 nroff -man wumpus.man 10 8:31 cp wumpus.man wumpus.man.old 11 8:36 vi wumpus.man 12 8:37 diff wumpus.man.old wumpus.man

履歴参照は、必要に応じて中括弧で周囲のテキストから隔離されている場合があります。 たとえば、「!vdoc」は「vdoc」で始まるコマンドを検索しますが、この例ではコマンドは見つかりませんが、「!\ {v} doc」は「vi wumpus.mandoc」に明確に展開されます。 中括弧でも、履歴の置換はネストされません。

(+)csh(1)は、たとえば、「!3d」を文字「d」が追加されたイベント3に展開しますが、tcsh_は「3d」で始まる最後のイベントに展開します。完全に数値の引数のみがイベント番号として扱われます。 これにより、数字で始まるイベントを呼び出すことができます。 _csh(1)のように「!3d」を展開するには、「!\ 3d」と言います。

イベントから単語を選択するには、イベントの仕様に従って「:」と目的の単語の指定子を指定します。 入力行の単語には0から番号が付けられ、最初の(通常はコマンド)単語は0、2番目の単語(最初の引数)は1などです。 基本的な単語指定子は次のとおりです。

Tag Description
0 The first (command) word
n The nth argument
^ The first argument, equivalent to ‘1’
$ The last argument
% The word matched by an ?s? search
x-y A range of words
-y Equivalent to ‘0-y’
* Equivalent to ‘^-$’, but returns nothing if the event contains only 1 word
x* Equivalent to ‘x-$’
x- Equivalent to ‘x*’, but omitting the last word (‘$’)

選択した単語は、単一の空白で区切られてコマンドラインに挿入されます。 たとえば、前の例の 'diff’コマンドは、 'diff !!:1.old !!:1'(前のイベントから最初の引数を選択するために ':1’を使用)または 'diff! -2:2!-2:1 'を使用して、' cp 'コマンドの引数を選択および交換します。 「diff」の順序を気にしなかった場合、「diff!-2:1-2」または単に「diff!-2:*」と言ったかもしれません。 「cp」コマンドは、「#」を使用して現在のイベントを参照する「cp wumpus.man!#:1.old」と記述されている場合があります。 「!n:-hurkle.man」は、「nroff」コマンドの最初の2つの単語を再利用して「nroff -man hurkle.man」と言います。

引数セレクターが「^」、「$」、「*」、「%」、または「-」で始まる場合、イベント指定と単語指定子を区切る「:」は省略できます。 たとえば、「diff」コマンドは「diff !! ^。old !! ^」または同等の「diff !! $。old !! $」である可能性があります。 ただし、「!!」が「!」に短縮されている場合、「-」で始まる引数セレクターはイベント仕様として解釈されます。

履歴参照には、単語指定子がありますが、イベント指定はありません。 次に、前のコマンドを参照します。 「diff」の例を続けると、単に「diff!。old!」と言うこともできますし、逆の順序で引数を取得するには、単に「diff!*」と言うこともできます。

履歴参照内の単語は、それぞれに「:」が付いた1つ以上の修飾子を付けて編集または「変更」することができます。

Tag Description
h Remove a trailing pathname component, leaving the head.
t Remove all leading pathname components, leaving the tail.
r Remove a filename extension ‘.xxx’, leaving the root name.
e Remove all but the extension.
u Uppercase the first lowercase letter.
l Lowercase the first uppercase letter.
s/l/r/ Substitute l for r. l is simply a string like r, not a regular expression as in the eponymous ed(1) command. Any character may be used as the delimiter in place of ‘/’; a ‘#146; can be used to quote the delimiter inside l and r. The character ‘&’ in the r is replaced by l; ‘#146; also quotes ‘&’. If l is empty (‘‘’’), the l from a previous substitution or the s from a previous ‘?s?’ event specification is used. The trailing delimiter may be omitted if it is immediately followed by a newline.
& Repeat the previous substitution.
g Apply the following modifier once to each word.
a (+) Apply the following modifier as many times as possible to a single word. ‘a’ and ‘g’ can be used together to apply a modifier globally. In the current implementation, using the ‘a’ and ‘s’ modifiers together can lead to an infinite loop. For example, ‘:as/f/ff/’ will never terminate. This behavior might change in the future.
p Print the new command line but do not execute it.
q Quote the substituted words, preventing further substitutions.
x Like q, but break into words at blanks, tabs and newlines.

修飾子は、最初の変更可能な単語にのみ適用されます(「g」が使用されている場合を除く)。 変更可能な単語がない場合はエラーになります。

たとえば、「diff」コマンドは「diff wumpus.man.old!#^:r」として記述され、「:r」を使用して同じ行の最初の引数から「.old」を削除します(「!# ^ ')。 「echo hello out there」と言ってから、「echo!:u」を大文字にして「hello」、「echo!:au」を大文字にして、「echo!*:agu」と叫んでください。 「メール-s「パスワードを忘れました」腐敗」に「!:s/rot/root」を付けて「root」のスペルを修正することができます(ただし、別の方法については*スペルの訂正*を参照してください)。

置換には特別な略語があります。 「^」は、入力行の最初の文字である場合、「!: s ^」と同等です。 したがって、前の例でスペルを修正するために「^ rot ^ root」と言ったかもしれません。 これは、明示的に「!」で始まらない唯一の履歴置換です。

(+)_csh_自体では、1つの修飾子のみが各履歴または変数展開に適用されます。 _tcsh_では、複数を使用できます。たとえば、

Tag

説明

%mv wumpus.man/usr/man/man1/wumpus.1%man!$:t:r man wumpus

csh

Tag

説明

mv a.out/usr/games/wumpus> setenv PATH!$:h:$ PATH Bad! 修飾子:$。 > setenv PATH!\ {-2 $:h}:$ PATH setenv PATH/usr/games:/bin:/usr/bin:。

cshtcshtcsh

最後に、ヒストリーには、エディターおよび上記の置換を介してアクセスできます。 up-_および_down-history _、 history-search-backward_および_-forward i-search-back_および_-fwd vi-search-back_および_-fwd copy-prev-word_および_insert-last-word_エディターコマンドは、履歴リスト内のイベントを検索し、入力バッファーにコピーします。 _toggle-literal-history_エディターコマンドは、入力バッファーの履歴行の展開形式とリテラル形式を切り替えます。 _expand-history_と_expand-line_は、それぞれ現在の単語と入力バッファ全体の履歴置換を展開します。

エイリアス置換

aliasunalias link:#5 [コマンド]履歴の置換

したがって、「ls」のエイリアスが「ls -l」の場合、コマンド「ls/usr」は「ls -l/usr」になり、引数リストはそのままになります。 「lookup」のエイリアスが「grep!^/etc/passwd」の場合、「lookup bill」は「grep bill/etc/passwd」になります。 エイリアスを使用して、パーサーのメタ構文を導入できます。 たとえば、「alias print」pr \! *| lpr」は、ラインプリンターへの引数を_pr_(1)sする「コマンド」(「印刷」)を定義します。

エイリアス置換は、コマンドの最初の単語にエイリアスがなくなるまで繰り返されます。 エイリアスの置換によって最初の単語が変更されない場合(前の例のように)、ループを防ぐためにフラグが立てられます。 他のループが検出され、エラーが発生します。

一部のエイリアスはシェルによって参照されます。* 特別なエイリアス*を参照してください。

変数置換

setunsetprintenvsetenvunsetenv

(+)「set -r」で変数を読み取り専用にすることができます(q.v.)読み取り専用変数は変更または設定解除できません。そうしようとすると、エラーが発生します。 読み取り専用にすると、変数を書き込み可能にできないため、「set -r」の使用には注意が必要です。 環境変数を読み取り専用にすることはできません。

一部の変数は、シェルによって設定されるか、シェルによって参照されます。 たとえば、 argv 変数はシェルの引数リストの画像であり、この変数の値の単語は特別な方法で参照されます。 シェルによって参照される変数の一部はトグルです。シェルは、値が何であるかを気にしません。設定されているかどうかだけです。 たとえば、 verbose 変数は、コマンド入力をエコーするトグルです。 -v コマンドラインオプションは、この変数を設定します。 *特別なシェル変数*は、シェルが参照するすべての変数をリストします。

他の操作は変数を数値的に扱います。 「@」コマンドを使用すると、数値計算を実行し、結果を変数に割り当てることができます。 ただし、変数値は常に(ゼロ以上の)文字列として表されます。 数値演算の目的上、null文字列はゼロと見なされ、マルチワード値の2番目以降のワードは無視されます。

入力行がエイリアスされ解析された後、各コマンドが実行される前に、「$」文字をキーとして変数置換が実行されます。 この拡張は、「$」の前に「\」を付けることで防止できます。ただし、「常に」発生する「 "」内および「発生しない_」内は例外です。 「」で引用された文字列は後で解釈されるため(下記の「コマンドの置換」を参照)、「$」の置換は後で行われます。 空白、タブ、または行末が続く場合、「$」は変更されずに渡されます。

入出力リダイレクトは変数展開の前に認識され、個別に変数展開されます。 それ以外の場合、コマンド名と引数リスト全体が一緒に展開されます。 したがって、最初の(コマンド)ワードは(この時点で)複数のワードを生成でき、その最初のワードがコマンド名になり、残りのワードが引数になります。

「」で囲まれていないか、「:q」修飾子が指定されていない限り、変数置換の結果は最終的にコマンドとファイル名で置換される可能性があります。 「」内では、値が複数の単語で構成されている変数は、変数の値の単語が空白で区切られた単一の単語(の一部)に展開されます。 「:q」修飾子が置換に適用されると、変数は複数の単語に展開され、各単語は空白で区切られて引用され、後のコマンドまたはファイル名の置換を防ぎます。

次のメタシーケンスは、シェル入力に変数値を導入するために提供されています。 記載されている場合を除き、設定されていない変数を参照するとエラーになります。

$ name

Tag

説明

$ \ {_ name_}

変数_name_の値の単語を、それぞれ空白で区切って置き換えます。 中括弧は、そうでない場合はその一部となる後続の文字から_name_を隔離します。 シェル変数には、最大20文字の文字と、文字で始まる数字で構成される名前があります。 下線文字は文字と見なされます。 _name_がシェル変数ではなく、環境で設定されている場合、その値が返されます(ただし、この場合、「:」修飾子と以下に示す他の形式は使用できません)。

$ name [_ selector_]

$ \ {_ name _ [_ selector_]}

name_の値から選択した単語のみを置換します。 _selector_は「$」の置換の対象であり、単一の数字または「-」で区切られた2つの数字で構成されます。 変数の値の最初の単語には「1」という番号が付けられます。 範囲の最初の数を省略すると、デフォルトで「1」になります。 範囲の最後のメンバーを省略すると、デフォルトで「$# name_」になります。 selector '*'はすべての単語を選択します。 2番目の引数が省略されるか範囲内にある場合、範囲が空であってもエラーではありません。

$0

コマンド入力の読み取り元ファイルの名前を置き換えます。 名前が不明な場合はエラーが発生します。

$ number

$ \ {_ number_}

「$ argv [number]」と同等。

$*

「$ argv」と同等です。「$ argv [*]」と同等です。

「履歴置換」で説明した「:」修飾子は、「:p」を除き、上記の置換に適用できます。 複数使用することもできます。 (+) History substitution (q.v.)の場合と同様に、リテラルコロンから変数の置換を分離するためにブレースが必要な場合があります修飾子は中括弧内に表示する必要があります。

次の置換は、「:」修飾子では変更できません。

$?_ name_

$ \ {?_ name_}

_name_が設定されている場合は文字列「1」に、設定されていない場合は「0」に置き換えます。

$?0

現在の入力ファイル名が既知の場合は「1」、不明の場合は「0」に置き換えます。 インタラクティブシェルでは常に「0」です。

$#_ name_

$ \ {#_ name_}

_name_の単語数を置き換えます。

$#

「$#argv」に相当します。 (+)

$%_ name_

$ \ {%_ name_}

_name_の文字数に置き換えます。 (+)

$%_ number_

$ \ {%_ number_}

$ argv [number]の文字数に置き換えます。 (+)

$?

「$ status」に相当します。 (+)

$$

(親)シェルの(10進数)プロセス番号を置き換えます。

$!

このシェルによって開始された最後のバックグラウンドプロセスの(10進数)プロセス番号に置き換えます。 (+)

$_

最後に実行されたコマンドのコマンドラインを置き換えます。 (+)

$<

標準入力からの行を置換し、それ以降の解釈は行いません。 シェルスクリプトのキーボードから読み取るために使用できます。 (+)_csh_は常に$ <を引用しますが、「$ <:q」と同等であるかのように、_tcsh_は引用しません。 さらに、_tcsh_が行の入力を待機している場合、ユーザーは割り込みを入力して、行が置換されるシーケンスに割り込むことができますが、_csh_はこれを許可しません。

expand-variables

コマンド、ファイル名、ディレクトリスタックの置換

コマンド置換

二重引用符( '"')内のコマンド置換は空白とタブを保持します;改行のみが新しい単語を強制します。 単一の最後の改行は、いかなる場合でも新しい単語を強制しません。 したがって、コマンドが完全な行を出力する場合でも、コマンドの置換によって単語の一部のみが生成される可能性があります。

デフォルトでは、バージョン6.12以降のシェルは、コマンド内のすべての改行文字と復帰文字をスペースに置き換えます。 csubstnonl の設定を解除してこれをオフにすると、改行は通常どおりコマンドを分離します。

ファイル名の置換

ファイル名の一致では、ファイル名の先頭または「/」の直後の文字「。」と文字「/」を明示的に一致させる必要があります。 文字「*」は、ヌル文字列を含む任意の文字列に一致します。 文字「?」は任意の1文字と一致します。 シーケンス「[…​]」は、囲まれた文字のいずれかに一致します。 「[…​]」内で、「-」で区切られた1組の文字は、2つの間の任意の文字と字句的に一致します。

(+)いくつかのグロブパターンを無効にすることができます:シーケンス「[^ …​]」は、中括弧内の文字および/または文字の範囲で指定された任意の単一文字_not_と一致します。

globパターン全体を「^」で無効にすることもできます。

Tag

説明

echo bang crash crunch ouch> echo ^ cr bang ouch

メタ注釈「a \ {b、c、d} e」は、「abe ace ade」の省略形です。 左から右の順序が保持されます: '/usr/source/s1/\{oldls,ls}.c’は '/usr/source/s1/oldls.c/usr/source/s1/ls.c’に展開されます。 一致の結果は、この順序を維持するために低レベルで個別にソートされます。「../\ {memo、* box}」は「../memo ../box ../mbox」に展開される場合があります。 (「メモ」は一致する「*ボックス」の結果でソートされていないことに注意してください。)この構成が存在しないファイルに展開される場合、エラーではありませんが、コマンドからエラーを取得することは可能です拡張リストが渡されます。 この構造はネストできます。 特別な場合として、単語「\ {」、「}」、および「\ {}」はそのまま渡されます。

ファイル名の先頭の文字「〜」は、ホームディレクトリを指します。 スタンドアロン、つまり「〜」は、 home シェル変数の値に反映されるように、呼び出し元のホームディレクトリに展開されます。 文字、数字、および「-」文字で構成される名前が続く場合、シェルはその名前のユーザーを検索し、ホームディレクトリを置き換えます。したがって、「〜ken」は「/usr/ken」に展開され、「〜ken/chmach」は「/usr/ken/chmach」に展開されます。 文字「〜」の後に文字または「/」以外の文字が続く場合、または単語の先頭以外の場所に表示される場合、そのまま残ります。 したがって、「setenv MANPATH/usr/man:/usr/local/man:〜/lib/man」のようなコマンドは、ホームディレクトリの置換を行いません。

」、「?」、「[」、または「〜」を含む「」、「^」を含むまたは含まない、すべてのファイルと一致しないグロブパターンのエラーです。 ただし、glob-patternsのリスト内の1つのパターンのみがファイルに一致する必要があります(たとえば、「rm .a .c * .o」は、現在のディレクトリに「。」で終わるファイルがない場合にのみ失敗します。 a '、'。c '、または' .o ')、および nonomatch シェル変数が設定されている場合、エラーを引き起こすのではなく、何にも一致しないパターン(またはパターンのリスト)が変更されないままになります。

*noglob* シェル変数はファイル名の置換を防ぐために設定でき、通常は「^ X- *」にバインドされた_expand-glob_ editorコマンドを使用して、個々のファイル名の置換をインタラクティブに展開できます。

ディレクトリスタックの置換(+)

pushdpopddirsdirs * savedirsdirsfiledirstack *

文字「=」の後に1つ以上の数字が続くと、ディレクトリスタックのエントリに展開されます。 特殊なケース「=-」は、スタック内の最後のディレクトリに展開されます。 例えば、

Tag

説明

dirs -v 0/usr/bin 1/usr/spool/uucp 2/usr/accts/sys> echo = 1/usr/spool/uucp> echo = 0/calendar/usr/bin/calendar> echo =-/usr/accts/sys

  • noglobnonomatch *expand-glob

その他の置換(+)

Any* symlinks normalize-pathnormalize-commandcdpushd owd *

コマンド

シンプルなコマンド、パイプライン、シーケンス

単純なコマンドとパイプラインは「;」でシーケンスに結合でき、順次実行されます。 コマンドとパイプラインは、「||」または「&&」でシーケンスに結合することもできます。これは、C言語のように、1番目が失敗または成功した場合にのみ2番目が実行されることを示します

単純なコマンド、パイプライン、またはシーケンスを括弧「()」で囲んで、単純なコマンドを作成できます。このコマンドは、パイプラインまたはシーケンスのコンポーネントになります。 コマンド、パイプライン、またはシーケンスは、「&」を続けることで終了を待たずに実行できます。

ビルトインおよび非組み込みコマンドの実行

括弧で囲まれたコマンドは常にサブシェルで実行されます。

Tag

説明

(cd; pwd); pwd

ホーム

Tag

説明

cd; pwd

ホーム cd

実行するコマンドが組み込みコマンドでないことが判明した場合、シェルは_execve_(2)を介してコマンドを実行しようとします。 変数 path の各単語は、シェルがコマンドを探すディレクトリを指定します。 -c オプションも -t オプションも指定されていない場合、シェルはこれらのディレクトリの名前を内部テーブルにハッシュし、次の可能性があるディレクトリでのみ_execve_(2)を試行します。コマンドはそこにあります。 これにより、検索パスに多数のディレクトリが存在する場合のコマンドの場所が大幅に高速化されます。 このメカニズムが(_unhash_を介して)オフになっている場合、シェルに -c または -t 引数が指定されている場合、または「/」で始まらない path の各ディレクトリコンポーネントについてシェルは、現在の作業ディレクトリと指定されたコマンド名を連結して、ファイルのパス名を形成し、実行を試みます。

ファイルに実行権限があるが、システムの実行可能ファイルではない場合(つまり、実行可能バイナリでも、インタープリターを指定するスクリプトでもない場合)、シェルコマンドを含むファイルであると見なされ、新しいシェルが生成されますそれを読んで。 シェル以外のインタープリターを指定するために、_shell_特殊エイリアスを設定できます。

「#!」スクリプトインタープリター規則を理解しないシステムでは、シェルをコンパイルしてエミュレートすることができます。 version シェル変数を参照してください。 その場合、シェルはファイルの最初の行をチェックして、形式が「#!_ interpreter_ arg …​」かどうかを確認します。 そうである場合、シェルは、指定されたargsで_interpreter_を開始し、標準入力でファイルをフィードします。

入出力

Tag

説明

<_name_

ファイル_name_(最初の変数、コマンド、およびファイル名を展開したもの)を標準入力として開きます。

<< word

_word_と同じ行までシェル入力を読み取ります。 _word_は変数、ファイル名、またはコマンド置換の対象にならず、各入力行は、この入力行で置換が行われる前に_word_と比較されます。 引用符「\」、「 "」、「」または「 '」が_word_変数に表示され、コマンド置換が間にある行で実行され、「\」が「$」、「\」、および「」を引用できる場合を除きます。 置き換えられるコマンドには、ドロップされる最後の改行を除き、すべてのブランク、タブ、および改行が保持されます。 結果のテキストは、標準入力としてコマンドに与えられる匿名の一時ファイルに配置されます。

name>! name>& name

>&! 名前

ファイル_name_は標準出力として使用されます。 ファイルが存在しない場合は作成されます。ファイルが存在する場合、切り捨てられ、以前の内容は失われます。

シェル変数 noclobber が設定されている場合、ファイルは存在していないか、キャラクタースペシャルファイル(たとえば、ターミナルまたは「/dev/null」)である必要があります。そうでない場合、エラーが発生します。 これは、ファイルの偶発的な破壊を防ぐのに役立ちます。 この場合、「!」フォームを使用してこのチェックを抑制できます。

「&」を含むフォームは、診断出力を指定のファイルと標準出力にルーティングします。 _name_は、「<」入力ファイル名と同じ方法で展開されます。

>> name >>& name >>! name

>>&! 名前

「>」に似ていますが、_name_の最後に出力を追加します。 シェル変数 noclobber が設定されている場合、「!」形式のいずれかが指定されない限り、ファイルが存在しないことはエラーになります。

not/dev/null * link:#10 [ジョブ] *

診断出力は、標準出力のパイプを介して送信できます。 単に「|」ではなく、「|&」という形式を使用してください。

シェルは現在、標準出力もリダイレクトしないと診断出力をリダイレクトできませんが、「(_ command_> output-file)>&error-file」は多くの場合、許容できる回避策です。 出力を端末に送信するために、_output-file_または_error-file_のいずれかを「/dev/tty」にすることができます。

特徴

制御フロー

foreach _、 switch_、および_while_ステートメント、および_if-then-else_形式の_if_ステートメントでは、以下に示すように、入力行の単一の単純なコマンドに主要なキーワードが必要です。

シェルの入力がシーク可能でない場合、ループが読み取られるたびにシェルは入力をバッファリングし、この内部バッファーでシークを実行して、ループによって暗黙の再読み取りを実行します。 (これが許す限り、バックワードgotosはシークできない入力で成功します。)

Expressions

_ifwhileexit @ _

論理演算子、算術演算子、比較演算子

Tag

説明

|| && | ^ & == != =~ !~ ⇐ >= < > << >> + -*/% ! ~ ( )

ファイル名の置換 switch

「0」で始まる文字列は8進数と見なされます。 引数がヌルまたは欠落している場合、「0」と見なされます。 すべての式の結果は文字列であり、10進数を表します。 式の2つのコンポーネントが同じ単語に現れることはないことに注意することが重要です。ただし、パーサーにとって構文的に重要な式のコンポーネント(「&」、「|」、「<」、「>」、「(」))に隣接している場合は、スペースで囲む必要があります。

コマンド終了ステータス

状態

ファイル照会演算子

- opファイルop

Tag Description
r Read access
w Write access
x Execute access
X Executable in the path or shell builtin, e.g., ‘-X ls’ and ‘-X ls-F’ are generally true, but ‘-X/bin/ls’ is not (+)
e Existence
o Ownership
z Zero size
s Non-zero size (+)
f Plain file
d Directory
*l * Symbolic link (+)*
b Block special file (+)
c Character special file (+)
*p * Named pipe (fifo) (+)*
*S * Socket special file (+)*
u Set-user-ID bit is set (+)
g Set-group-ID bit is set (+)
k Sticky bit is set (+)
t file (which must be a digit) is an open file descriptor for a terminal device (+)
R Has been migrated (convex only) (+)
*L * Applies subsequent operators in a multiple-operator test to a symbolic link rather than to the file to which the link points (+)*

_file_はコマンドとファイル名を展開し、テストして実際のユーザーとの関係が指定されているかどうかを確認します。 _file_が存在しないかアクセスできない場合、または「*」で示される演算子について、指定されたファイルタイプが現在のシステムに存在しない場合、すべての問い合わせはfalse、つまり「0」を返します。

これらの演算子は簡潔にするために組み合わせることができます。「-_ xy file_」は「-x file && -y file」と同等です。 (+)たとえば、「-fx」は単純な実行可能ファイルに対してはtrue(「1」を返す)ですが、ディレクトリに対してはそうではありません。

*L* は、複数演算子のテストで使用され、後続の演算子を、リンクが指すファイルではなくシンボリックリンクに適用します。 たとえば、「-lLo」は、呼び出し元のユーザーが所有するリンクに当てはまります。 *Lr* 、 *Lw* 、および *Lx* は常にリンクに対してtrue、非リンクに対してfalseです。 *L* は、複数演算子のテストの最後の演算子である場合、異なる意味を持ちます。下記参照。

_file_がファイルであることを期待する演算子と、そうでない演算子( Xt など)を組み合わせることは可能ですが、時には誤解を招く可能性があります。 L にファイル以外の演算子を続けると、特に奇妙な結果が生じる可能性があります。

他のオペレーターは、「0」または「1」だけでなく、他の情報を返します。 (+)以前と同じ形式です。 _op_は次のいずれかです

Tag Description
A Last file access time, as the number of seconds since the epoch
*A: * Like* A*, but in timestamp format, e.g., ‘Fri May 14 16:36:10 1993’
M Last file modification time
*M: * Like* M*, but in timestamp format
C Last inode modification time
*C: * Like* C*, but in timestamp format
D Device number
I Inode number
*F * Composite* f*ile identifier, in the form device:_inode_
L The name of the file pointed to by a symbolic link
N Number of (hard) links
P Permissions, in octal, without leading zero
*P: * Like* P*, with leading zero
Pmode Equivalent to ‘-P file & mode’, e.g., ‘-P22 file’ returns ‘22’ if file is writable by group and other, ‘20’ if by group only, and ‘0’ if by neither
Pmode*: * Like* P*mode*:*, with leading zero
U Numeric userid
U: Username, or the numeric userid if the username is unknown
G Numeric groupid
G: Groupname, or the numeric groupid if the groupname is unknown
*Z * Size, in bytes

複数演算子のテストでは、これらの演算子のうちの1つのみが表示され、最後の演算子でなければなりません。* L は、複数演算子テストの終わりと他の場所で異なる意味を持つことに注意してください。 「0」はこれらの演算子の多くで有効な戻り値であるため、失敗しても「0」を返しません。ほとんどの場合は「-1」を返し、 *F は「:」を返します。

POSIXを定義してシェルをコンパイルした場合( version シェル変数を参照)、ファイル照会の結果は、access(2)システムコールの結果ではなく、ファイルの許可ビットに基づきます。 たとえば、通常は許可されているが読み取り専用でマウントされたファイルシステム上にある -w でファイルをテストする場合、テストはPOSIXシェルでは成功しますが、非POSIXシェルでは失敗します。

ファイル照会演算子は、_filetest_組み込みコマンド(q.v.)(+)でも評価できます。

ジョブ

jobjobs

Tag

説明

[1] 1234

ジョブを実行中に他の操作を実行したい場合は、サスペンドキー(通常は「^ Z」)を押すと、現在のジョブにSTOPシグナルが送信されます。 シェルは通常、ジョブが「一時停止」されたことを示し、別のプロンプトを印刷します。 listjobs シェル変数が設定されている場合、すべてのジョブは_jobs_ builtinコマンドのようにリストされます。 「long」に設定されている場合、リストは「jobs -l」のような長い形式になります。 その後、中断されたジョブの状態を操作できます。 bg_コマンドを使用して「バックグラウンド」に配置するか、他のコマンドを実行して、最終的に_fg_を使用してジョブを「フォアグラウンド」に戻すことができます。 (_run-fg-editor editorコマンドも参照してください。)「^ Z」はすぐに有効になり、入力時に保留中の出力と未読の入力が破棄されるという割り込みのようなものです。 _wait_組み込みコマンドを使用すると、シェルはすべてのバックグラウンドジョブが完了するまで待機します。

「^]」キーは、プログラムが_read_(2)しようとするまでSTOP信号を生成しない遅延サスペンド信号を現在のジョブに送信します。 これは、ジョブを読み込んだ後に停止したいジョブに対していくつかのコマンドを準備したときに、前もって入力すると便利です。 「^ Y」キーは、csh(1)でこの機能を実行します。 _tcsh_では、「^ Y」は編集コマンドです。 (+)

バックグラウンドで実行されているジョブは、ターミナルから読み取ろうとすると停止します。 通常、バックグラウンドジョブは出力の生成を許可されますが、コマンド「stty tostop」を指定することでこれを無効にできます。 このttyオプションを設定すると、バックグラウンドジョブは、入力を読み取ろうとするときのように出力を生成しようとするときに停止します。

シェルでジョブを参照する方法はいくつかあります。 文字「%」は、ジョブ名を表します。 ジョブ番号1を参照する場合は、「%1」という名前を付けることができます。 ジョブに名前を付けるだけで、そのジョブが前面に表示されます。したがって、「%1」は「fg%1」の同義語であり、ジョブ1をフォアグラウンドに戻します。 同様に、「%1&」と言うと、「bg%1」と同様にバックグラウンドでジョブ1が再開されます。 ジョブは、開始するために入力された文字列の明確なプレフィックスで名前を付けることもできます: 'ex’で始まる名前の一時停止ジョブが1つしかない場合、 '%ex’は通常、一時停止された_ex_(1)ジョブを再起動します。 「%?_ string_」と言って、テキストに_string_が含まれるジョブを指定することもできます(そのようなジョブが1つしかない場合)。

シェルは、現在および以前のジョブの概念を維持します。 ジョブに関連する出力では、現在のジョブは「」でマークされ、前のジョブは「-」でマークされます。 略語「%」、「%」、および(_history_メカニズムの構文と同様に)「%%」はすべて現在のジョブを指し、「%-」は前のジョブを指します。

ジョブ制御メカニズムでは、一部のシステムで_stty_(1)オプション「new」を設定する必要があります。 これは、キーボードから割り込み文字を生成してジョブを停止するよう指示するttyドライバーの「新しい」実装からの成果物です。 新しいttyドライバーのオプション設定の詳細については、stty(1)および_setty_組み込みコマンドを参照してください。

ステータスレポート

  • notify * notifynotify

ジョブの停止中にシェルを離れようとすると、「ジョブを停止しました」という警告が表示されます。_jobs_コマンドを使用して、ジョブの内容を確認できます。 これを行うか、すぐに再度終了しようとすると、シェルは2回目の警告を表示せず、中断されたジョブは終了します。

自動、定期、および時間指定イベント(+)

  • 組み込みコマンド特殊シェル変数特殊エイリアス *

sched builtinコマンドは、コマンドをスケジュールされたイベントリストに入れ、指定された時間にシェルによって実行されます。

beepcmd _、 cwdcmd periodic precmd postcmd jobcmd_* 特別なエイリアス*をそれぞれ設定して、シェルがベルを鳴らしたい場合、作業ディレクトリが変更された場合、各プロンプトの前に tperiod 分ごとにコマンドを実行できます、各コマンドの実行前、各コマンドの実行後、ジョブの開始時またはフォアグラウンドへの移行時。

*autologout* シェル変数を設定すると、一定の非アクティブ時間が経過した後、ログアウトまたはシェルをロックできます。
*mail* シェル変数を設定して、定期的に新しいメールをチェックできます。
*printexitvalue* シェル変数を設定して、ゼロ以外のステータスで終了するコマンドの終了ステータスを出力できます。
*rmstar* シェル変数は、「rm *」が入力されたときに、それが本当に意図したものであるかどうかをユーザーに尋ねるように設定できます。
*time* シェル変数は、指定されたCPU秒数を超えるプロセスの完了後に_time_組み込みコマンドを実行するように設定できます。
*watch* および *who* シェル変数は、選択したユーザーがログインまたはログアウトしたときにレポートするように設定でき、_log_組み込みコマンドはいつでもそれらのユーザーについてレポートします。

ネイティブ言語システムのサポート(+)

*versionversionLANGLC_CTYPE*

システムのNLSを使用する場合、setlocale(3)関数が呼び出され、適切な文字コード/分類および並べ替えが決定されます(たとえば、「en_CA.UTF-8」は「UTF-8」を文字コードとして生成します)。 この関数は通常、 LANG および LC_CTYPE 環境変数を調べます。詳細については、システムのドキュメントを参照してください。 システムのNLSを使用しない場合、シェルは、値に関係なく、 LANG 変数と LC_CTYPE 変数のいずれかが設定されるたびにISO 8859-1文字セットが使用されると想定して、それをシミュレートします。 ソートは、シミュレートされたNLSでは影響を受けません。

さらに、実際のNLSとシミュレートされたNLSの両方で、\ 200- \ 377の範囲のすべての印刷可能文字、つまりM-_char_バインディングを持つものは、自動的に_self-insert-command_に再バインドされます。 escape-_char_シーケンスに対応するバインディングがあれば、そのまま残されます。 NOREBIND 環境変数が設定されている場合、これらの文字は再バインドされません。 これは、シミュレートされたNLSまたは完全なISO 8859-1を前提とするプリミティブな実NLSに役立つ場合があります。 それ以外の場合、\ 240- \ 377の範囲のすべてのM-_char_バインディングは事実上取り消されます。 もちろん、_bindkey_を使用して関連キーを明示的に再バインドすることも可能です。

不明な文字(つまり、印刷可能文字でも制御文字でもない文字)は、\ nnn形式で印刷されます。 ttyが8ビットモードでない場合、他の8ビット文字はASCIIに変換し、卓越したモードを使用して印刷されます。 シェルは、ttyの7/8ビットモードを決して変更せず、ユーザーが開始した7/8ビットモードの変更を追跡します。 NLSユーザー(または、さらに言えば、メタキーを使用するユーザー)は、たとえば_〜/.login_ファイルの適切な_stty_(1)コマンドを使用して、8ビットモードでttyを明示的に設定する必要があります。

OSバリアントサポート(+)

組み込みコマンド

TCF(aix-ibm370、aix-ps2)をサポートするシステムでは、_getspath_および_setspath_がシステム実行パスを取得および設定し、_getxvers_および_setxvers_が実験バージョンのプレフィックスを取得および設定し、_migrate_がサイト間のプロセスを移行します。 _jobs_ビルトインは、各ジョブが実行されているサイトを印刷します。

BS2000では、_bs2cmd_は基礎となるBS2000/OSDオペレーティングシステムのコマンドを実行します。

Domain/OSでは、_inlib_は共有ライブラリを現在の環境に追加し、_rootnode_はルートノードを変更し、_ver_はsystypeを変更します。

Machでは、setpath_はMachの_setpath(1)と同等です。

Masscomp/RTUおよびHarris CX/UXでは、_universe_がユニバースを設定します。

Harris CX/UXでは、_ucb_または_att_は指定されたユニバースでコマンドを実行します。

Convex/OSでは、_warp_はユニバースを出力または設定します。

*VENDOR* 、 *OSTYPE* 、および *MACHTYPE* 環境変数は、シェルが実行していると考えているシステムのベンダー、オペレーティングシステム、およびマシンタイプ(マイクロプロセッサクラスまたはマシンモデル)をそれぞれ示します。 これらは、複数のタイプのマシン間でホームディレクトリを共有する場合に特に便利です。たとえば、

Tag

説明

パス設定=(〜/bin。$ MACHTYPE/usr/ucb/bin/usr/bin。)

〜/.login

*version* シェル変数は、シェルのコンパイル時に選択されたオプションを示します。

_newgrp_ビルトイン、 afsuser および echo_style シェル変数、およびシェルの入力ファイルのシステム依存の場所にも注意してください( link:#13 [FILES] を参照)。

信号処理

〜/.logout -q

シェルスクリプトでは、シェルの割り込み信号と終了信号の処理は_onintr_で制御でき、ハングアップの処理は_hup_と_nohup_で制御できます。

シェルはハングアップで終了します( logout シェル変数も参照)。 デフォルトでは、シェルの子も同様ですが、シェルは終了時にハングアップを送信しません。 _hup_は、シェルが終了時に子にハングアップを送信するように準備し、_nohup_は子をハングアップを無視するように設定します。

端末管理(+)

setty

echotc _、 settc_、および_telltc_コマンドを使用して、コマンドラインから端末機能を操作およびデバッグできます。

SIGWINCHまたはSIGWINDOWをサポートするシステムでは、シェルはウィンドウのサイズ変更に自動的に適応し、設定されている場合は環境変数 LINES および COLUMNS を調整します。 環境変数 TERMCAP にli#およびco#フィールドが含まれている場合、シェルはそれらを調整して新しいウィンドウサイズを反映します。

参照

組み込みコマンド特殊エイリアス特殊シェル変数

ビルトインコマンド

Tag

説明

ジョブ

_fg_組み込みコマンドの同義語。

*% job &*

_bg_組み込みコマンドの同義語。

:

何もしません、成功します。

*@*  *@* _name_ *=* _expr_ *@* _name _ [_ index_] *=* _expr_ *@* __name __ * *++*  *|* *-**
*@* _name _ [_ index _] * *++*  *|* -*

最初の形式は、すべてのシェル変数の値を出力します。

2番目の形式は、_expr_の値を_name_に割り当てます。 3番目の形式は、_expr_の値を_name_の_index_番目のコンポーネントに割り当てます。 _name_とその_index_番目のコンポーネントの両方が既に存在している必要があります。

_expr_には、Cのように演算子「」、「+」などを含めることができます。 _expr_に「<」、「>」、「&」、または「」が含まれている場合、少なくとも_expr_のその部分を「()」内に配置する必要があります。 _expr_の構文は、 *link:#9 [Expressions] で説明されている構文とは関係がないことに注意してください。

4番目と5番目の形式は、増分(「++」)または減分(「-」)name_またはその_index ’番目のコンポーネントです。

「@」と_name_の間にはスペースが必要です。 _name_と「=」の間、および「=」と_expr_の間のスペースはオプションです。 _expr_のコンポーネントはスペースで区切る必要があります。

エイリアス [name [wordlist]]

引数なしで、すべてのエイリアスを出力します。 _name_を使用すると、nameのエイリアスが出力されます。 _name_および_wordlist_を使用して、_wordlist_を_name_のエイリアスとして割り当てます。 _wordlist_は、置換されるコマンドとファイル名です。 _name_は「エイリアス」または「アンエイリアス」ではない場合があります。 _unalias_組み込みコマンドも参照してください。

割り当て

取得された動的メモリの量を、使用済みメモリと空きメモリに分けて表示します。 引数を指定すると、各サイズカテゴリの空きブロックと使用済みブロックの数が表示されます。 カテゴリはサイズ8から始まり、各ステップで2倍になります。 VAX以外のシステムは異なるメモリアロケーターを使用する可能性があるため、このコマンドの出力はシステムタイプによって異なる場合があります。

*bg* [**%** __ job__ ...]

指定されたジョブ(または引数なしで現在のジョブ)をバックグラウンドに入れ、停止している場合はそれぞれ続行します。 _job_は、 link:#10 [ジョブ] で説明されているように、数字、文字列、「」、「%」、「+」、または「-」です。

*bindkey* [**-l * *|* *-d * *|* *-e * *|* *-v * *|* -u *](+) *bindkey* [ *-a* ] [ *-b* ] [ *-k* ] [ *-r* ] [*-*] _key_(+)
*bindkey* [ *-a* ] [ *-b* ] [ *-k* ] [**-c * *|* -s *] [*-*] _key command_(+)

オプションがない場合、最初の形式はすべてのバインドされたキーとそれぞれがバインドされているエディターコマンドをリストし、2番目の形式は_key_がバインドされているエディターコマンドをリストし、3番目のフォームはエディターコマンド_command_を_key_にバインドします。 オプションは次のとおりです。

Tag

説明

-l

すべてのエディターコマンドとそれぞれの簡単な説明を一覧表示します。

-d

すべてのキーをデフォルトエディターの標準バインディングにバインドします。

-e

すべてのキーを標準のGNU Emacsのようなバインディングにバインドします。

-v

すべてのキーを標準の_vi_(1)のようなバインディングにバインドします。

-a

代替キーマップのキー割り当てをリストまたは変更します。 これは、_vi_コマンドモードで使用されるキーマップです。

-b

key_は、^ character(たとえば、 '^ A')またはC-_character(たとえば、 'C-A')と書かれた制御文字、M-character(たとえば、 'M-A')と書かれたメタ文字として解釈されます。 F-string(たとえば、 'F-string')で記述されたファンクションキー、またはX-character(たとえば、 'X-A')で記述された拡張プレフィックスキー。

-k

_key_は、「下」、「上」、「左」、「右」のいずれかの記号矢印キー名として解釈されます。

-r

key_のバインドを削除します。 注意:「bindkey -r」は、_key_を_self-insert-command(q.v.)にバインドしません。_key_を完全にバインド解除します。

-c

_command_は、エディターコマンドではなく、組み込みコマンドまたは外部コマンドとして解釈されます。

-s

_command_はリテラル文字列として扱われ、_key_が入力されたときに端末入力として扱われます。 _command_内のバインドされたキー自体は再解釈され、これは10レベルの解釈の間続きます。

--

オプションの処理を強制的に中断するため、次の単語は「-」で始まっていても_key_として扱われます。

*-u* (または無効なオプション)

使用法メッセージを出力します。

_key_は、単一の文字または文字列です。 コマンドが文字列にバインドされている場合、文字列の最初の文字は_sequence-lead-in_にバインドされ、文字列全体がコマンドにバインドされます。

key_の制御文字は、リテラル(通常は「^ V」にバインドされたエディターコマンド_quoted-insert_を前に付けることで入力できます)または書かれたキャレット文字スタイル(「^ A」など)です。 削除は「^?」(キャレット疑問符)と書かれています。 _key_および_command_には、次のようにバックスラッシュ付きのエスケープシーケンス(System V _echo(1)のスタイル)を含めることができます。

Tag Description
 

|Tag |Description |\a |Bell |\b |Backspace |\e |Escape |\f |Form feed |\n |Newline |\r |Carriage return |\t |Horizontal tab |\v |Vertical tab |\nnn |The ASCII character corresponding to the octal number nnn

「\」は、特に「#146」がある場合、次の文字の特別な意味を無効にします。および「^」。

*bs2cmd* _bs2000-command_(+)

_bs2000-command_をBS2000コマンドインタープリターに渡して実行します。 実行できるのは非対話型コマンドのみであり、/EXECUTEや/CALL-PROCEDUREなど、現在のプロセスのイメージをオーバーレイするコマンドを実行することはできません。 (BS2000のみ)

ブレーク

最も近い_foreach_または_while_の_end_の後に実行を再開します。 現在の行の残りのコマンドが実行されます。 したがって、すべてを1行で記述することにより、マルチレベルのブレークが可能です。

*breaksw*

_switch_を中断し、_endsw_の後に再開します。

組み込み(+)

すべての組み込みコマンドの名前を出力します。

バイ(+)

_logout_組み込みコマンドの同義語。 シェルがそのようにコンパイルされた場合にのみ使用可能です。 version シェル変数を参照してください。

ケース *label *

以下で説明する_switch_ステートメントのラベル。

*cd* [ *-p* ] [ *-l* ] [**-n * *|* -v *] [_name_]

ディレクトリ_name_が指定されている場合、シェルの作業ディレクトリを_name_に変更します。 そうでない場合は、 home に変更します。 name_が「-」の場合、前の作業ディレクトリとして解釈されます(その他の置換*を参照)。 (+)_name_が現在のディレクトリのサブディレクトリではない(および「/」、「./」、または「../」で始まらない)場合、変数 *cdpath の各コンポーネントは、サブディレクトリ_name。 最後に、他のすべてが失敗したが、_name_が値が「/」で始まるシェル変数である場合、これがディレクトリであるかどうかが確認されます。

*-p* を使用すると、_dirs_と同様に最終的なディレクトリスタックが出力されます。 *-l* 、*-n *、および *-v* フラグは、_dirs_と同じ効果が_cd_にあり、*-p *を意味します。 (+)
*implicitcd* シェル変数も参照してください。
*chdir*

_cd_組み込みコマンドの同義語。

*complete* [_command_ [__word __ * */*  *__ pattern __*  */* * _ list _ [**:* *__ select __]*/*[[_ suffix _]*/*] ...]](+)

引数なしで、すべての補完をリストします。 _command_を使用すると、_command_の補完がリストされます。 _command_や_word_などで、補完を定義します。

_command_には、完全なコマンド名またはglob-patternを指定できます(*ファイル名の置換*を参照)。 _command_があいまいな場合にのみ補完を使用する必要があることを示すために、「-」で始めることができます。

_word_は、現在の単語に関連するどの単語を補完するかを指定し、次のいずれかです。

Tag Description
 

|Tag |Description |c |Current-word completion. pattern is a glob-pattern which must match the beginning of the current word on the command line. pattern is ignored when completing the current word. |C *|Like c*, but includes pattern when completing the current word. |n |Next-word completion. pattern is a glob-pattern which must match the beginning of the previous word on the command line. |N *|Like n*, but must match the beginning of the word two before the current word. |p |Position-dependent completion. pattern is a numeric range, with the same syntax used to index shell variables, which must include the current word.

可能な補完のリストである_list_は、次のいずれかです。

Tag Description
 

|Tag |Description |a |Aliases |b |Bindings (editor commands) |c |Commands (builtin or external commands) |C |External commands which begin with the supplied path prefix |d |Directories |D |Directories which begin with the supplied path prefix |e |Environment variables |f |Filenames |F |Filenames which begin with the supplied path prefix |g |Groupnames |j |Jobs |l |Limits |n |Nothing |s |Shell variables |S |Signals |t |Plain (‘‘text’’) files |T |Plain (‘‘text’’) files which begin with the supplied path prefix |v |Any variables |u |Usernames |x *|Like n*, but prints select when list-choices is used. |X |Completions |$var |Words from the variable var |(…​) |Words from the given list |‘…​‘ |Words from the output of command

_select_はオプションのglob-patternです。 指定すると、_select_に一致する_list_のみからの単語が考慮され、 fignore シェル変数は無視されます。 最後の3つのタイプの補完には_select_パターンがない場合があり、 x は_list-choices_エディターコマンドを使用するときに_select_を説明メッセージとして使用します。

_suffix_は、正常な完了に追加される単一の文字です。 nullの場合、文字は追加されません。 省略した場合(この場合、4番目の区切り文字も省略できます)、ディレクトリにスラッシュが追加され、他の単語にスペースが追加されます。

次に、いくつかの例を示します。 一部のコマンドは引数としてディレクトリのみを取るため、プレーンファイルを完成させる意味はありません。

Tag

説明

>完全なCD「p/1/d/」

「cd」(「p/1」)に続く最初の単語のみをディレクトリで補完します。 p タイプの補完は、コマンド補完を絞り込むためにも使用できます。

Tag

説明

co [^ D]完全圧縮>完全-co *’p/0/(compress)/’> co [^ D]>圧縮

この補完は、「co」(つまり「co* 」に一致)で始まる「compress」(リスト内の唯一の単語)のコマンド(位置0、「p/0」の単語)を完了します。 先頭の「-」は、この補完があいまいなコマンドのみで使用されることを示します。

Tag

説明

>「n/-user/u/」の検索を完了する

*n* タイプの補完の例です。 「find」に続く単語と「-user」に続く単語は、ユーザーのリストから補完されます。

Tag

説明

cc「c/-I/d/」を完了

*c* タイプの補完を示します。 「cc」に続き、「-I」で始まる単語はすべてディレクトリとして補完されます。 小文字の *c* を使用したため、「-I」はディレクトリの一部として扱われません。

さまざまなlistsは、さまざまなコマンドで役立ちます。

Tag

説明

>完全なエイリアス 'p/1/a/'>完全な男 'p/*/c/'>完全なセット 'p/1/s/'>完全なtrue 'p/1/x:Truthにはオプションがありません。

これらの完全な単語は、エイリアス付きの「エイリアス」、コマンド付きの「男」、シェル変数付きの「セット」に続きます。 「true」にはオプションがないため、 x は、補完が試みられても何もせず、補完の選択肢がリストされたときに「真実にはオプションがありません。」

_man_の例と他のいくつかの例では、「c/」または「n/」を「p/*」として使用することもできます。

単語は、完了時に評価される変数から完了することができます。

Tag

説明

>完全なftp 'p/1/$ hostnames/'> set hostnames =(rtfm.mit.edu tesla.ee.cornell.edu)> ftp [^ D] rtfm.mit.edu tesla.ee.cornell.edu> ftp [^ C]>ホスト名を設定=(rtfm.mit.edu tesla.ee.cornell.edu uunet.uu.net)> ftp [^ D] rtfm.mit.edu tesla.ee.cornell.edu uunet.uu.net

または完了時に実行されるコマンドから:

Tag

説明

>完全終了 ’p/*/‘ ps | awk \\ {print \ \ $ 1 \} ‘/’> kill -9 [^ D] 23113 23377 23380 23406 23429 23529 23530 PID

_complete_コマンド自体は引数を引用しないため、 '\ {print $ 1}'の中括弧、スペース、および '$'は明示的に引用する必要があります。

1つのコマンドに複数の補完を含めることができます。

Tag

説明

>完全なdbx ’p/2/(コア)/’ ’p/*/c/’

「db」への2番目の引数を「core」という単語で補完し、他のすべての引数をコマンドで補完します。 位置補完は、次の単語の補完の前に指定されることに注意してください。 補完は左から右に評価されるため、次の語の補完が最初に指定された場合、補完は常に一致し、位置補完は実行されません。 これは、完了を定義する際のよくある間違いです。

_select_パターンは、コマンドが特定の形式のみを持つファイルを引数として使用する場合に便利です。 例えば、

Tag

説明

cc「p//f:。[cao]/」を完成

「.c」、「。a」、または「.o」のみで終わるファイルの「cc」引数を補完します。 _select_は、 Filename substitution で説明されているglob-patternの否定を使用して、ファイルを除外することもできます。 使用するかもしれません

Tag

説明

>完全なrm ’p//f:^ 。\ {c、h、cc、C、tex、1、man、l、y}/’

貴重なソースコードを「rm」の完了から除外します。 もちろん、除外された名前を手動で入力するか、_complete-word-raw_または_list-choices-raw_エディターコマンド(q.v.)を使用して補完メカニズムをオーバーライドすることもできます。

「C」、「D」、「F」、「T」listsはそれぞれ「c」、「d」、「f」、「t」に似ていますが、_select_引数を別の方法で使用します。特定のパスプレフィックスで始まるファイルへ。 たとえば、Elmメールプログラムは、メールディレクトリの略語として「=」を使用します。 使用するかもしれません

Tag

説明

>完全なelm c @ = @ F:$ HOME/Mail/@

「elm -f〜/Mail/」のように「elm -f =」を完了します。 _select_引数との混乱を避けるため、「/」の代わりに「@」を使用し、「〜」の代わりに「$ HOME」を使用したことに注意してください。ホームディレクトリの置換は単語の先頭でのみ機能するためです。

_suffix_は、完成した単語に非標準の接尾辞(ディレクトリの場合はスペースや「/」ではない)を追加するために使用されます。

Tag

説明

>完全な指「c/*@/$ hostnames/」「p/1/u/@」

ユーザーのリストから「指」への引数を完了し、「@」を追加し、「ホスト名」変数から「@」の後に完了します。 完了が指定される順序に再度注意してください。

最後に、インスピレーションの複雑な例を示します。

Tag

説明

>完全な検索\ 'n/-name/f/' 'n/-newer/f/' 'n/-\ {、n} cpio/f/' \ 'n/-exec/c/' 'n/- ok/c/ n/-user/u/'\' n/-group/g/ n/-fstype/(nfs 4.2)/'\' n/-type/(bcdflps)/'\' c/-/(name newer cpio ncpio exec ok user \ group fstype type atime ctime depth inum \ ls mtime nogroup nouser perm print prune \ size xdev)/'\' p/*/d/'

これにより、「-name」、「-newer」、「-cpio」または「ncpio」(両方に一致するパターンに注意)に続く単語、コマンドに「-exec」または「-ok」に続く単語、「 userとgroupはそれぞれユーザーとグループに、「-fstype」または「-type」に続く単語は指定されたリストのメンバーになります。 また、指定されたリストからスイッチ自体を完了し( c タイプの補完の使用に注意してください)、他の方法ではディレクトリに対して完了していないものをすべて完了します。 うわー。

完了する単語がチルダ置換(「〜」で始まる)または変数(「$」で始まる)の場合、プログラムされた補完は無視されることに注意してください。 _complete_は実験的な機能であり、シェルの将来のバージョンでは構文が変更される可能性があります。 _uncomplete_組み込みコマンドも参照してください。

持続する

最も近い囲み_while_または_foreach_の実行を継続します。 現在の行の残りのコマンドが実行されます。

デフォルト:

_switch_ステートメントでデフォルトのケースにラベルを付けます。 すべての_case_ラベルの後に来る必要があります。

*dirs* [ *-l* ] [**-n * *|* -v *] * *dirs -S*  *|* -L * [_filename_](+)
*dirs -c* (+)

最初のフォームは、ディレクトリスタックを出力します。 スタックの最上部は左側にあり、スタックの最初のディレクトリは現在のディレクトリです。 -l の場合、出力の「〜」または「〜name」は、明示的に home またはユーザー_name_のホームディレクトリのパス名に展開されます。 () *-n* を使用すると、エントリは画面の端に達する前にラップされます。 () -v を使用すると、エントリは行ごとに出力され、スタック位置が前に付きます。 (+) -n または -v が複数指定されている場合、-v *が優先されます。 *-p は受け入れられますが、何もしません。

*-S* を使用すると、2番目の形式はディレクトリスタックを一連の_cd_および_pushd_コマンドとして_filename_に保存します。 *-L* を使用すると、シェルは_filename_を取得します。これは、おそらく *-S* オプションまたは *savedirs* メカニズムによって保存されたディレクトリスタックファイルです。 どちらの場合でも、_filename_が指定されていない場合は *dirsfile* が使用され、 *dirsfile* が設定されていない場合は_〜/.cshdirs_が使用されます。

ログインシェルは、起動時に「dirs -L」と同等の処理を行い、 savedirs が設定されている場合は、終了する前に「dirs -S」を実行します。 通常、〜/.cshdirs_の前に〜/.tcshrc_のみが提供されるため、 dirsfile は_〜/.login_ではなく_〜/.tcshrc_に設定する必要があります。

最後のフォームは、ディレクトリスタックをクリアします。

*echo* [ *-n* ] _word_ ...

スペースで区切られ、改行で終わる各_word_をシェルの標準出力に書き込みます echo_style シェル変数は、echo_のBSDおよび/またはSystem Vバージョンのフラグおよびエスケープシーケンスをエミュレートする(またはエミュレートしない)ように設定できます。 _echo(1)を参照してください。

*echotc* [ *-sv* ] _arg_ ... (+)

args_の端末機能(_termcap(5)を参照)を実行します。 たとえば、「echotc home」はカーソルをホームポジションに、「echotc cm 3 10」は列3と行10に、「echotc ts 0」にカーソルを送ります。 echo "これはテストです。"; echotc fs ’は「これはテストです」と出力します。ステータス行に。

_arg_が「baud」、「cols」、「lines」、「meta」または「tabs」の場合、その機能の値を出力します(「yes」または「no」は、端末にその機能があるかどうかを示します)。 これを使用して、遅い端末でシェルスクリプトからの出力を冗長にしたり、コマンド出力を画面上の行数に制限したりできます。

Tag

説明

set history = ‘echotc lines‘> @ history--

Termcap文字列には、正しくエコーされないワイルドカードが含まれる場合があります。 シェル変数を端末機能文字列に設定するときは、二重引用符を使用する必要があります。次の例のように、ステータス行に日付を配置します。

Tag

説明

set tosl = "‘echotc ts 0‘"> set frsl = "‘echotc fs‘"> echo -n "$ tosl"; date; echo -n "$ frsl"

*-s* を使用すると、存在しない機能はエラーを引き起こすのではなく空の文字列を返します。 *-v* を使用すると、メッセージは冗長になります。
*else*  *end*  *endif*
*endsw*

以下の_foreach if switch_、および_while_ステートメントの説明を参照してください。

評価 arg …​

引数をシェルへの入力として扱い、結果のコマンドを現在のシェルのコンテキストで実行します。 これは通常、コマンド置換または変数置換の結果として生成されたコマンドを実行するために使用されます。これらの置換の前に解析が行われるためです。 eval_の使用例については、_tset(1)を参照してください。

*exec* _command_

現在のシェルの代わりに指定されたコマンドを実行します。

終了 [expr]

シェルは、指定された_expr_( link:#9 [Expressions] で説明されている式)の値で終了するか、_expr_なしで status 変数の値で終了します。

*fg* [**%** __ job__ ...]

指定されたジョブ(または引数なしで現在のジョブ)をフォアグラウンドに移動し、停止している場合はそれぞれ続行します。 job_は、 link:#10 [ジョブ] で説明されているように、数字、文字列、「」、「%」、「+」、または「-」です。 _run-fg-editor editorコマンドも参照してください。

  • filetest-** op file …​ (+)

op(*ファイル照会演算子*で説明されているファイル照会演算子)を各_file_に適用し、結果をスペース区切りリストとして返します。

 *foreach* _name_ **(* *__ wordlist __* )*
...

終わり

変数_name_を_wordlist_の各メンバーに連続して設定し、このコマンドと一致する_end_の間で一連のコマンドを実行します。 (_foreach_と_end_の両方が別々の行に単独で現れる必要があります。)組み込みコマンド_continue_を使用してループを途中で続行し、組み込みコマンド_break_を使用してループを途中で終了することができます。 このコマンドが端末から読み取られると、ループは「foreach? 」(または prompt2 )でループ内のステートメントが実行されます。 ターミナルでループをタイプミスした場合、それを消すことができます。

*getspath* (+)

システム実行パスを出力します。 (TCFのみ)

*getxvers* (+)

試験バージョンのプレフィックスを出力します。 (TCFのみ)

*glob* _wordlist_

_echo_に似ていますが、#146はありません。出力ではエスケープが認識され、単語はヌル文字で区切られます。 シェルを使用して単語のリストをファイル名展開するプログラムに役立ちます。

*goto* _word_

_word_はファイル名で、「label」という形式の文字列を生成するためにコマンド置換されます。 シェルは入力を可能な限り巻き戻し、「label:」という形式の行を検索します。この行の先頭には空白またはタブが付けられ、その行の後に実行が継続されます。

*hashstat*

コマンドの検索で内部ハッシュテーブルがどれだけ効果的であったかを示す統計行を出力します(exec’sを回避します)。 _exec_は、ハッシュ関数がヒットの可能性を示す path の各コンポーネント、および「/」で始まらない各コンポーネントで試行されます。

vfork(2)のないマシンでは、ハッシュバケットの数とサイズのみを出力します。

履歴 [ -hTr ] [n] *履歴-S * *| -L | -M * [ファイル名](+)

  • 履歴-c *(+)

最初のフォームは、履歴イベントリストを印刷します。 _n_が指定された場合、最新のイベント_n_のみが印刷または保存されます。 -h を使用すると、履歴リストが先頭の数字なしで出力されます。 -T を指定すると、タイムスタンプもコメント形式で出力されます。 (これは、「history -L」または「source -h」でロードするのに適したファイルを生成するために使用できます。) -r を使用すると、印刷の順序は最も古いものから順になります。

*-S* を使用すると、2番目のフォームは履歴リストを_filename_に保存します。 *savehist* シェル変数の最初の単語が数字に設定されている場合、最大でその数の行が保存されます。 *savehist* の2番目の単語が「merge」に設定されている場合、履歴リストは既存の履歴ファイル(存在する場合)を置き換える代わりにマージされ、タイムスタンプでソートされます。 (+)マージは、複数のシェルが同時に使用されるX Window Systemなどの環境を対象としています。 現在、シェルが次々にうまく終了した場合にのみ成功します。
*-L* を使用すると、シェルは_filename_を追加します。これは、おそらく *-S* オプションまたは *savehist* メカニズムによって保存された履歴リストであり、履歴リストに追加されます。 *-M* は *-L* に似ていますが、_filename_の内容は履歴リストにマージされ、タイムスタンプでソートされます。 いずれの場合も、_filename_が指定されていない場合は *histfile* が使用され、 *histfile* が設定されていない場合は_〜/.history_が使用されます。 「history -L」は「source -h」とまったく同じですが、ファイル名は不要です。

ログインシェルは、起動時に「history -L」に相当し、 savehist が設定されている場合は、終了する前に「history -S」になります。 通常は_〜/.history_の前に_〜/.tcshrc_のみが提供されるため、 histfile は_〜/.login_ではなく_〜/.tcshrc_で設定する必要があります。

*histlit* が設定されている場合、最初と2番目のフォームは、履歴リストのリテラル(未展開)フォームを印刷して保存します。

最後のフォームは履歴リストをクリアします。

*hup* [_command_](+)

_command_を使用すると、_command_を実行して、ハングアップ信号で終了し、シェルが終了したときにシェルがハングアップ信号を送信するように調整します。 コマンドは、_hup_をオーバーライドして、ハングアップに対する独自の応答を設定する場合があることに注意してください。 引数なし(シェルスクリプトでのみ許可)を指定すると、スクリプトの残りの部分でシェルがハングアップで終了します。 *信号処理*および_nohup_組み込みコマンドも参照してください。

  • if(* expr )* command

exprlink:#9 [Expressions] で説明されている式)がtrueと評価されると、_command_が実行されます。 _command_の変数置換は早期に行われ、同時に_if_コマンドの残りの部分に対しても行われます。 _command_は、エイリアス、パイプライン、コマンドリスト、または括弧で囲まれたコマンドリストではなく、単純なコマンドである必要がありますが、引数が含まれている場合があります。 入出力のリダイレクトは、_expr_がfalseであり、したがって_command_が実行されない場合でも発生します。これはバグです。

  • if(* expr )then * …​

  • else if(* expr2 )then * …​ その他 …​

    *endif*

指定された_expr_がtrueの場合、最初の_else_へのコマンドが実行されます。そうでない場合、_expr2_がtrueの場合、2番目の_else_へのコマンドが実行されます。 任意の数の_else-if_ペアが可能です。必要な_endif_は1つだけです。 _else_部分も同様にオプションです。 (単語_else_および_endif_は、入力行の先頭に表示する必要があります。

*inlib* _shared-library_ ... (+)

各_shared-library_を現在の環境に追加します。 共有ライブラリを削除する方法はありません。 (ドメイン/OSのみ)

ジョブ [ -l ]

アクティブなジョブをリストします。 -l を使用すると、通常の情報に加えてプロセスIDがリストされます。 TCFシステムでは、各ジョブが実行されているサイトを印刷します。

*kill* [ *-s* _signal_] **%* *__ job__ | __pid__ ...* kill -l *

最初と2番目の形式は、指定された_signal_(または、指定されていない場合はTERM(終了)シグナル)を指定されたジョブまたはプロセスに送信します。 job_は、 link:#10 [ジョブ] で説明されているように、数字、文字列、「」、「%」、「+」、または「-」です。 シグナルは、番号または名前のいずれかで与えられます(/usr/include/signal.h_で与えられるように、接頭辞「SIG」が取り除かれます)。 デフォルトの_job_はありません。 「kill」とだけ言っても、現在のジョブにシグナルを送信しません。 送信されるシグナルがTERM(終了)またはHUP(ハングアップ)である場合、ジョブまたはプロセスにもCONT(継続)シグナルが送信されます。 3番目の形式は信号名をリストします。

*limit* [ *-h* ] [_resource_ [_maximum-use_]]

現在のプロセスとそれが作成する各プロセスによる消費を、指定された_resource_の_maximum-use_を個別に超えないように制限します。 _maximum-use_が指定されていない場合、現在の制限が出力されます。 _resource_が指定されていない場合、すべての制限が指定されます。 -h フラグを指定すると、現在の制限の代わりにハード制限が使用されます。 ハード制限は、現在の制限の値に上限を課します。 スーパーユーザーのみがハード制限を引き上げることができますが、ユーザーは法的範囲内で現在の制限を引き下げたり上げたりすることができます。

現在、制御可能なリソースは次のとおりです(OSでサポートされている場合):

Tag

説明

cputime

各プロセスで使用されるCPU秒の最大数

ファイルサイズ

作成できる最大の単一ファイル

datasize

プログラムテキストの末尾を超えたsbrk(2)によるdata + stack領域の最大成長

stacksize

自動的に拡張されるスタック領域の最大サイズ

coredumpsize

作成される最大のコアダンプのサイズ

memoryuse

プロセスが特定の時間に割り当てた物理メモリの最大量(これは2.6カーネルでは実装されていません。 値は無意味であり、この値を変更しても効果はありません)

heapsize

プロセスが_brk()_システムコールごとに割り当てることができるメモリの最大量

descriptors_または_openfiles

このプロセスで開くことができるファイルの最大数

concurrency

このプロセスのスレッドの最大数

memorylocked

プロセスがmlock(2)を使用してメモリにロックできる最大サイズ

maxproc

このユーザーIDの同時プロセスの最大数

sbsize

このユーザーのソケットバッファー使用の最大サイズ

_maximum-use_は、(浮動小数点または整数)数値とそれに続くスケール係数として指定できます。 _cputime_以外のすべての制限では、デフォルトのスケールは「k」または「キロバイト」(1024バイト)です。 「m」または「メガバイト」のスケール係数も使用できます。 _cputime_の場合、デフォルトのスケーリングは「秒」ですが、分を表す「m」または時間を表す「h」、または分と秒を表す「mm:ss」という形式の時刻を使用できます。

_resource_名前とスケールファクターの両方について、名前の明確なプレフィックスで十分です。

ログ(+)

*watch* シェル変数を出力し、最後にログインした時間に関係なく、ログインしている *watch* で示される各ユーザーについてレポートします。 _watchlog_もご覧ください。

ログイン

ログインシェルを終了し、/bin/login._のインスタンスに置き換えます。これは、_sh(1)との互換性のために含まれているログオフの1つの方法です。

  • ログアウト *

ログインシェルを終了します。* ignoreeof *が設定されている場合に特に便利です。

*ls-F* [-_switch_ ...] [_file_ ...](+)

「ls -F」のようなファイルをリストしますが、はるかに高速です。 リスト内の特殊ファイルの各タイプを特殊文字で識別します。

Tag

説明

/

ディレクトリ

実行可能

ブロックデバイス

%

キャラクターデバイス

|

名前付きパイプ(名前付きパイプのみのシステム)

=

ソケット(ソケットがあるシステムのみ)

@

シンボリックリンク(シンボリックリンクを持つシステムのみ)

隠しディレクトリ(AIXのみ)またはコンテキスト依存(HP/UXのみ)

ネットワークスペシャル(HP/UXのみ)

*listlinks* シェル変数が設定されている場合、シンボリックリンクはより詳細に識別されます(もちろん、それらが存在するシステムでのみ)。

@

非ディレクトリへのシンボリックリンク

>

ディレクトリへのシンボリックリンク

&

どこにもシンボリックリンク

*listlinks* は_ls-F_の速度を低下させ、シンボリックリンクによってポイントされたファイルを保持するパーティションをマウントします。
*listflags* シェル変数が「x」、「a」、「A」、またはそれらの任意の組み合わせ(「xA」など)に設定されている場合、_ls-F_のフラグとして使用され、「ls」のように動作します-xF '、' ls -Fa '、' ls -FA '、または組み合わせ(たとえば、' ls -FxA ')。 「ls -C」がデフォルトではないマシンでは、_list-flags *に「x」が含まれていない限り、_ls-F_は「ls -CF」のように動作し、その場合は「ls -xF」のように動作します。 _ls-F_は、引数が_ls_(1)に渡され、スイッチが指定されている場合、「alias ls ls-F」は通常正しいことを行います。
*ls-F* ビルトインは、ファイルタイプまたは拡張子に応じて異なる色を使用してファイルを一覧表示できます。 *color* _tcsh_変数および *LS_COLORS* 環境変数を参照してください。

移行 [-* site] pid | *% jobid …​ (+)

移行- site(+)

最初のフォームは、プロセスまたはジョブを指定されたサイト、またはシステムパスによって決定されたデフォルトサイトに移行します。 2番目の形式は「migrate -site $$」と同等です。現在のプロセスを指定されたサイトに移行します。 シェルはttyを失いたくないため、シェル自体を移行すると予期しない動作が発生する可能性があります。 (TCFのみ)

*newgrp* [*-*] _group_(+)

「exec newgrp」と同等; newgrp(1)を参照してください。 シェルがそのようにコンパイルされた場合にのみ使用可能です。 version シェル変数を参照してください。

*nice* [* *+* * __ number__] [_command_]

シェルのスケジューリング優先順位を_number_に、または_number_なしで4に設定します。 _command_で、_command_を適切な優先度で実行します。 _number_が大きいほど、プロセスが取得するCPUは少なくなります。 スーパーユーザーは、「nice -number …​」を使用して負の優先順位を指定できます。 コマンドは常にサブシェルで実行され、単純な_if_ステートメントのコマンドに適用される制限が適用されます。

*nohup* [_command_]

_command_を使用して、_command_を実行して、ハングアップ信号を無視します。 コマンドは、_nohup_をオーバーライドして、ハングアップに対する独自の応答を設定する場合があることに注意してください。 引数なし(シェルスクリプトでのみ許可)を指定すると、シェルはスクリプトの残りの部分のハングアップを無視します。 *信号処理*および_hup_組み込みコマンドも参照してください。

通知 [ job …​]

通常のように次のプロンプトまで待機するのではなく、指定されたジョブ(または、%_ job_なしで現在のジョブ)のステータスが変更されたときに、シェルがユーザーに非同期的に通知します。 _job_は、 link:#10 [ジョブ] で説明されているように、数字、文字列、「」、「%」、「+」、または「-」です。 notify シェル変数も参照してください。

*onintr* [**-** | _label_]

割り込み時のシェルの動作を制御します。 引数なしで、割り込み時のシェルのデフォルトアクションを復元します。これは、シェルスクリプトを終了するか、端末コマンド入力レベルに戻ることです。 「-」を使用すると、すべての割り込みが無視されます。 label_を使用すると、割り込みが受信されたとき、または子プロセスが割り込まれたために終了したときに、シェルが「goto _label」を実行します。

シェルが切り離された状態で実行され、システムのスタートアップファイル( link:#13 [FILES] を参照)で割り込みが無効になっている場合、_onintr_は無視されます。

*popd* [ *-p* ] [ *-l* ] [**-n * *|* -v *] [* *+*  *__ n__]

引数なしで、ディレクトリスタックをポップし、新しい最上位ディレクトリに戻ります。 番号が「+ n」の場合、スタック内の_n_番目のエントリを破棄します。

最後に、_popd_のすべての形式は、_dirs_と同様に最終的なディレクトリスタックを出力します。* pushdsilent シェル変数を設定してこれを防ぎ、-p フラグを指定して *pushdsilent をオーバーライドできます。 -l-n *、および *-v フラグは、_pops_で_dirs_と同じ効果があります。 (+)

*printenv* [_name_](+)

すべての環境変数の名前と値、または_name_とともに環境変数_name_の値を出力します。

*pushd* [ *-p* ] [ *-l* ] [**-n * *|* -v *] [__name__ | * *+*  *__ n__]

引数なしで、ディレクトリスタックの上位2つの要素を交換します。* pushdtohome が設定されている場合、_cd_のように、引数なしの_pushd_は「pushd〜」を実行します。 ()_name_を使用すると、現在の作業ディレクトリがディレクトリスタックにプッシュされ、_name_に変更されます。 _name_が「-」の場合、前の作業ディレクトリとして解釈されます(*ファイル名の置換*を参照)。 () *dunique が設定されている場合、_pushd_は、_name_のすべてのインスタンスをスタックから削除してからスタックにプッシュします。 ()番号「 n」を使用して、ディレクトリスタックのnth要素を回転させて最上位の要素にし、それに変更します。 ただし、 dextract が設定されている場合、「pushd + n」はnthディレクトリを抽出し、スタックの一番上にプッシュして変更します。 (+)

最後に、_pushd_のすべての形式は、_dirs_と同様に最終的なディレクトリスタックを出力します。 pushdsilent シェル変数を設定してこれを防ぎ、-p *フラグを指定して *pushdsilent をオーバーライドできます。 -l-n *、および *-v フラグは、_dirs_と同じ効果が_pushd_にあります。 (+)

再ハッシュ

*path* 変数内のディレクトリの内容の内部ハッシュテーブルが再計算されます。 これは、ログイン中に *path* のディレクトリに新しいコマンドが追加された場合に必要です。 これは、自分のディレクトリの1つにコマンドを追加する場合、またはシステムプログラマがシステムディレクトリの1つの内容を変更する場合にのみ必要です。 また、チルダ展開によって構築されたホームディレクトリのキャッシュをフラッシュします。

繰り返し countコマンド

指定された_command_は、上記の1行の_if_ステートメントの_command_と同じ制限に従い、_count_回実行されます。 _count_が0であっても、I/Oリダイレクトは1回だけ発生します。

ルートノード// nodename(+)

ルートノードを//_ nodename_に変更し、「/」が「//_ nodename_」として解釈されるようにします。 (ドメイン/OSのみ)

*sched* (+) *sched* [ *+* ] _ hh:mmコマンド_(+)

*予定- *n(+)

最初のフォームは、スケジュールされたイベントのリストを印刷します。* sched *シェル変数を設定して、スケジュールされたイベントのリストを出力する形式を定義できます。 2番目の形式は、_command_を予定イベントリストに追加します。 例えば、

Tag

説明

sched 11:00 echo It#146; s 11 o#146; clock。

シェルは午前11時に「11時です」とエコーします。 時刻は12時間のAM/PM形式である場合があります

Tag

説明

sched 5pm set prompt = ’[%h] It#146; s after 5;家に帰る:> ’

または、現在の時刻に関連する場合があります。

Tag

説明

sched +2:15/usr/lib/uucp/uucico -r1 -sother

相対時間指定では、AM/PM形式を使用できません。 3番目のフォームは、イベントリストから項目_n_を削除します。

Tag

説明

sched 1 Wed Apr 4 15:42/usr/lib/uucp/uucico -r1 -sother 2 Wed Apr 4 17:00 set prompt = [%h] It’s after 5;ホームに戻る:>> sched -2​​> sched 1 Wed Apr 4 15:42/usr/lib/uucp/uucico -r1 -sother

スケジュールされたイベントリスト内のコマンドは、コマンドがスケジュールされた時刻の後、最初のプロンプトが出力される直前に実行されます。 コマンドが実行される正確な時刻を見逃す可能性がありますが、期限切れのコマンドは次のプロンプトで実行されます。 シェルがユーザー入力を待機している間に期限が来るコマンドがすぐに実行されます。 ただし、すでに実行されているコマンドの通常の操作は中断されないため、スケジュールされたイベントリスト要素が実行されます。

このメカニズムは、一部のUnixシステムの_at_(1)コマンドと似ていますが、同じではありません。 主な欠点は、指定された時間に正確にコマンドを実行できない場合があることです。 その主な利点は、_sched_がシェルから直接実行されるため、シェル変数およびその他の構造にアクセスできることです。 これにより、時刻に基づいて作業環境を変更するメカニズムが提供されます。

*set*  *set* _name_ ... *セット *__name __*  *=*  *_ word_ ...* セット[-r] [-f | -l] *__name __* * =(* *__ wordlist __* *)** ... (+)*セット *__name [index] __*  *=*  *_ word_ ...* set -r *(+) *set -r* _name_ ... (+)
*set -r* __name __ * *=* * _ word_ ... (+)

コマンドの最初の形式は、すべてのシェル変数の値を出力します。 複数の単語を含む変数は、括弧で囲まれた単語リストとして出力されます。 2番目の形式は、_name_をヌル文字列に設定します。 3番目の形式は、_name_を単一の_word_に設定します。 4番目の形式は、_name_を_wordlist_内の単語のリストに設定します。 すべての場合、値はコマンドとファイル名を展開したものです。 -rが指定されている場合、値は読み取り専用に設定されます。 -fまたは-lが指定されている場合、順序を保持した一意の単語のみを設定します。 -fは単語の最初の出現を優先し、-lは最後の出現を優先します。 5番目の形式は、名前の_index_番目のコンポーネントを_word_に設定します。このコンポーネントはすでに存在している必要があります。 6番目の形式は、読み取り専用のすべてのシェル変数の名前のみをリストします。 7番目の形式は、値があるかどうかに関係なく、_name_を読み取り専用にします。 8番目の形式は3番目の形式と同じですが、_name_を同時に読み取り専用にします。

これらの引数を繰り返して、単一のsetコマンドで読み取り専用の複数の変数を設定または作成できます。 ただし、設定が行われる前にすべての引数に対して変数展開が行われることに注意してください。 また、「=」は_name_と_word_の両方に隣接したり、空白で区切ったりすることができますが、一方のみに隣接することはできません。 _unset_組み込みコマンドも参照してください。

*setenv* [_name_ [_value_]]

引数なしで、すべての環境変数の名前と値を出力します。 _name_を指定すると、環境変数_name_を_value_に設定します。または、_value_なしで、ヌル文字列に設定します。

*setpath* _path_(+)

setpath(1)と同等です。 (マッハのみ)

*setspath* LOCAL | __site__ | __cpu__ ... (+)

システム実行パスを設定します。 (TCFのみ)

*settc* _cap value_(+)

端末機能_cap_(termcap(5)で定義)の値が_value_であると信じるようにシェルに指示します。 健全性チェックは行われません。 コンセプト端末のユーザーは、右端の列で適切に折り返すために「xn noを設定」する必要がある場合があります。

*setty* [**-d * *|* *-q * *|* -x *] [ *-a* ] [[_mode_](+)

シェルが変更を許可しないttyモード(端末管理*を参照)を制御します。 *-d-q *、または *-x は、それぞれ_setty_にttyモードの「編集」、「引用」、または「実行」セットで動作するよう指示します。 -d-q *または *-x なしで、「execute」が使用されます。

他の引数がない場合、_setty_は、オン(「+ mode」)またはオフ(「-mode」)に固定されている選択されたセットのモードをリストします。 使用可能なモード、つまりディスプレイは、システムごとに異なります。 -a を使用すると、固定されているかどうかにかかわらず、選択したセット内のすべてのttyモードがリストされます。 * + * mode- mode、または_mode_を使用すると、選択したセットの_mode_のオン/オフを修正したり、_mode_から制御を削除したりできます。 たとえば、「setty + echok echoe」は「echok」モードを修正し、シェルがコマンドを実行しているときにコマンドが「echoe」モードをオンまたはオフにできるようにします。

*setxvers* [_string_](+)

実験バージョンのプレフィックスを_string_に設定するか、_string_が省略されている場合は削除します。 (TCFのみ)

*shift* [_variable_]

引数なしで、 argv [1]を破棄し、 argv のメンバーを左にシフトします。 argv が設定されていないか、値として1ワード未満であるとエラーになります。 _variable_を使用すると、_variable_に対して同じ機能を実行します。

ソース [ -h ] name [args …​]

シェルは、_name_からコマンドを読み取り、実行します。 コマンドは履歴リストに配置されません。 _args_が指定されている場合、それらは argv に配置されます。 (+)_source_コマンドはネストできます。ネストが深すぎると、シェルのファイル記述子が不足する可能性があります。 あらゆるレベルの_source_でエラーが発生すると、ネストされたすべての_source_コマンドが終了します。 -h を使用すると、コマンドは「history -L」のように、実行される代わりに履歴リストに配置されます。

停止 job | pid …​

バックグラウンドで実行中の指定されたジョブまたはプロセスを停止します。 _job_は、 link:#10 [ジョブ] で説明されているように、数字、文字列、「」、「%」、「+」、または「-」です。 デフォルトの_job_はありません。 「停止」と言っても、現在のジョブは停止しません。

サスペンド

*^ Z* で停止シグナルを送信したかのように、シェルをトラックで停止させます。 これは、_su_(1)によって開始されたシェルを停止するために最もよく使用されます。

スイッチ(* string )ケース str1 *:

Tag

説明

…​ breaksw

  • デフォルト: *
Tag Description
…​* breaksw*

Tag

説明

*endsw*

各ケースラベルは、指定された_string_(最初のコマンドとファイル名が展開されたもの)に対して連続的に照合されます。 ファイルのメタ文字「*」、「?」、および「[…​]」は、変数展開されたケースラベルで使用できます。 「デフォルト」ラベルが見つかる前に一致するラベルがない場合、デフォルトラベルの後に実行が開始されます。 各ケースラベルとデフォルトラベルは、行の先頭に表示する必要があります。 _breaksw_コマンドは、_endsw_の後に実行を継続します。 そうしないと、Cの場合のように、制御がケースラベルとデフォルトラベルを通過する可能性があります 一致するラベルがなく、デフォルトがない場合、_endsw_の後に実行が継続されます。

*telltc* (+)

すべての端末機能の値をリストします(termcap(5)を参照)。

*termname* [_terminal type_](+)

terminal type(または_terminal type_が指定されていない場合は TERM の現在の値)にホストのtermcap(5)またはterminfo(5)データベースにエントリがあるかどうかをテストします。 端末タイプをstdoutに出力し、エントリが存在する場合は0を返し、そうでない場合は1を返します。

時間 [command]

command(エイリアス、パイプライン、コマンドリスト、または括弧で囲まれたコマンドリストではなく、単純なコマンドである必要があります)を実行し、 time 変数で説明されているように時間の概要を出力します。 必要に応じて、コマンドの完了時に時間統計を出力するための追加のシェルが作成されます。 _command_を指定しないと、現在のシェルとその子の時間の概要が出力されます。

*umask* [_value_]

ファイル作成マスクを8進数で指定される_value_に設定します。 マスクの一般的な値は002で、グループへのすべてのアクセス権を与え、他のユーザーへの読み取りおよび実行アクセス権を付与し、022、グループおよび他のユーザーへの読み取りおよび実行アクセス権を付与します。 _value_を指定しないと、現在のファイル作成マスクが出力されます。

*unalias* _pattern_

名前が_pattern_と一致するすべてのエイリアスを削除します。 したがって、「unalias *」はすべてのエイリアスを削除します。 unaliasedを何もしないことはエラーではありません。

未完了 pattern(+)

名前が_pattern_と一致するすべての補完を削除します。 したがって、「未完了*」はすべての完了を削除します。 uncompletedにならないことはエラーではありません。

アンハッシュ

内部ハッシュテーブルの使用を無効にして、実行されたプログラムの場所を高速化します。

ユニバース ユニバース(+)

ユニバースを_universe_に設定します。 (Masscomp/RTUのみ)

*unlimit* [ *-h* ] [_resource_]

_resource_の制限を削除します。_resource_が指定されていない場合は、すべての_resource_の制限を削除します。 -h を使用すると、対応するハード制限が削除されます。 スーパーユーザーのみがこれを実行できます。 ほとんどのシステムでは_descriptors_を無制限にできないため、 unlimit が正常に終了しない場合があることに注意してください。

  • 未設定 *pattern

読み取り専用でない限り、名前が_pattern_と一致するすべての変数を削除します。 したがって、「unset* 」は、読み取り専用でない限り、すべての変数を削除します。これは悪い考えです。 何も_unset_にならないのはエラーではありません。

*unsetenv* _pattern_

名前が_pattern_と一致するすべての環境変数を削除します。 したがって、「unsetenv *」はすべての環境変数を削除します。これは悪い考えです。 unsetenvedを何もしないことはエラーではありません。

*ver* [_systype_ [_command_]](+)

引数なしで、 SYSTYPE を出力します。 _systype_を使用して、 SYSTYPE を_systype_に設定します。 _systype_および_command_を使用して、_systype_の下で_command_を実行します。 _systype_は「bsd4.3」または「sys5.3」です。 (ドメイン/OSのみ)

待つ

シェルは、すべてのバックグラウンドジョブを待ちます。 シェルが対話型の場合、割り込みにより待機が中断され、シェルはすべての未処理ジョブの名前とジョブ番号を出力します。

ワープ universe(+)

ユニバースを_universe_に設定します。 (Convex/OSのみ)

ウォッチログ(+)

_log_組み込みコマンドの代替名(q.v.)。 シェルがそのようにコンパイルされた場合にのみ使用可能です。 version シェル変数を参照してください。

*where* _command_(+)
*path* のエイリアス、ビルトイン、実行可能ファイルを含む、_command_のすべての既知のインスタンスを報告します。
*which* _command_(+)

置換、*パス*検索などの後にシェルによって実行されるコマンドを表示します。 組み込みコマンドは_which_(1)に似ていますが、_tcsh_エイリアスと組み込みコマンドを正しく報告し、10〜100倍高速です。 _which-command_エディターコマンドも参照してください。

  • while(* expr )* …​

終わり

while_と一致する_end_の間でコマンドを実行し、while _exprlink:#9 [Expressions] で説明した式)がゼロ以外と評価されます。 _while_および_end_は、入力行に単独で表示される必要があります。 _break_および_continue_は、ループを途中で終了または継続するために使用できます。 入力が端末の場合、_foreach_の場合と同様に、ユーザーはループを介して最初にプロンプ​​トが表示されます。

特別なエイリアス(+)

Tag

説明

*beepcmd*

シェルが端末ベルを鳴らしたいときに実行します。

*cwdcmd*

作業ディレクトリが変更されるたびに実行されます。 たとえば、ユーザーが_xterm_(1)と_twm_(1)などのタイトルバーをサポートしている親の再設定ウィンドウマネージャーを使用してXウィンドウシステムで作業している場合

Tag

説明

>エイリアスcwdcmd ’echo -n "^ [] 2; $ \ {HOST}:$ cwd ^ G"’

次に、シェルは実行中の_xterm_(1)のタイトルを、ホストの名前、コロン、および現在の完全な作業ディレクトリに変更します。 それを行うためのより洗練された方法は

Tag

説明

>エイリアスcwdcmd ’echo -n "^ [] 2; $ \ {HOST}:$ cwd ^ G ^ [] 1; $ \ {HOST} ^ G"”

これにより、ホスト名と作業ディレクトリがタイトルバーに表示されますが、アイコンマネージャーメニューにはホスト名のみが表示されます。

cwdcmd_に_cd _、 pushd_、または_popd_を含めると、無限ループが発生する可能性があることに注意してください。 著者の意見では、そうすることで誰もが彼らにふさわしいものを手に入れることができます。

*jobcmd*

各コマンドが実行される前、またはコマンドの状態が変化したときに実行されます。 これは_postcmd_に似ていますが、ビルトインを出力しません。

Tag

説明

>エイリアスjobcmd ’echo -n "^ [] 2 \; \!#^ G"’

_vi foo.c_を実行すると、コマンド文字列がxtermのタイトルバーに配置されます。

*helpcommand*
*run-help* エディターコマンドによって呼び出されます。 ヘルプが必要なコマンド名は、唯一の引数として渡されます。 たとえば、ある場合

Tag

説明

>エイリアスhelpcommand ’\ !: 1 --help’

次に、GNUヘルプ呼び出し規約を使用して、コマンド自体のヘルプ表示が呼び出されます。 現在、多くのコマンドの表を使用することを除いて、さまざまな呼び出し規約(たとえば、慣習的なUnix '-h')を説明する簡単な方法はありません。

定期的

*tperiod* 分ごとに実行されます。 これにより、新しいメールなど、一般的ではあるが頻繁ではない変更をチェックする便利な手段が提供されます。 たとえば、ある場合

Tag

説明

tperiod = 30を設定>エイリアス定期的チェックニュース

その後、checknews(1)プログラムは30分ごとに実行されます。 _periodic_が設定されているが、 tperiod が設定されていないか0に設定されている場合、_periodic_は_precmd_と同様に動作します。

*precmd*

各プロンプトが出力される直前に実行されます。 たとえば、ある場合

Tag

説明

>エイリアスprecmd date

date(1)は、シェルが各コマンドのプロンプトを表示する直前に実行されます。 _precmd_の設定に制限はありませんが、慎重に使用する必要があります。

*postcmd*

各コマンドが実行される前に実行されます。

Tag

説明

>エイリアスpostcmd ’echo -n "^ [] 2 \; \!#^ G"’

_vi foo.c_を実行すると、コマンド文字列がxtermのタイトルバーに配置されます。

シェル

自身がインタープリターを指定しない実行可能スクリプトのインタープリターを指定します。 最初の単語は、目的のインタープリターへのフルパス名(例:「/bin/csh」または「/usr/local/bin/tcsh」)である必要があります。

特別なシェル変数

シェルは、 addsuffixargvautologoutcsubstnonlcommandecho_styleeditgidgrouphomeloginshoid を設定します、 pathpromptprompt2prompt3shellshlvltcshtermttyuiduser および version 起動時;ユーザーが変更しない限り、その後は変更されません。 シェルは、必要に応じて cwddirstackowd および status を更新し、ログアウト時に logout を設定します。

シェルは、 afsusergrouphomepathshlvlterm 、および user を同じ名前の環境変数と同期します。環境変数が変更されるたびに、対応するシェルが変更されます一致する変数(シェル変数が読み取り専用でない場合)およびその逆。 cwdPWD の意味は同じですが、この方法では同期されないため、シェルは pathPATH の異なる形式を自動的に相互変換します。

Tag

説明

*addsuffix* (+)

設定されている場合、ファイル名の補完により、ディレクトリの最後に「/」が追加され、通常のファイルが完全に一致した場合に通常のファイルの最後にスペースが追加されます。 デフォルトで設定されます。

*afsuser* (+)

設定すると、 autologout の自動ロック機能は、Kerberos認証にローカルユーザー名の代わりにその値を使用します。

*ampm* (+)

設定すると、すべての時間が12時間のAM/PM形式で表示されます。

*argv*

シェルへの引数。 位置パラメータは argv から取得されます。つまり、「$ 1」は「$ argv [1]」などに置き換えられます。 デフォルトで設定されますが、通常は対話型シェルでは空です。

自動修正(+)

設定されている場合、spell-word editorコマンドは各完了試行の前に自動的に呼び出されます。

自動展開(+)

設定されている場合、expand-history editorコマンドは各完了試行の前に自動的に呼び出されます。

オートリスト(+)

設定すると、あいまいな完了後に可能性がリストされます。 「ambiguous」に設定すると、補完によって新しいキャラクターが追加されない場合にのみ可能性がリストされます。

自動ログアウト(+)

最初の単語は、自動ログアウトまでの非アクティブ状態の分数です。 オプションの2番目の単語は、自動ロックまでの非アクティブ状態の分数です。 シェルが自動的にログアウトすると、「auto-logout」が出力され、変数logoutが「automatic」に設定されて終了します。 シェルが自動的にロックされると、ユーザーは作業を続けるためにパスワードを入力する必要があります。 5回の誤った試行により、自動ログアウトが行われます。 ログインシェルおよびスーパーユーザーシェルでは、デフォルトで「60」(60分後の自動ログアウト、ロックなし)に設定されますが、シェルがウィンドウシステムの下で実行されていると判断する場合(つまり、 DISPLAY 環境変数が設定されている場合) ttyが擬似tty(pty)であるか、シェルがコンパイルされていません( version シェル変数を参照)。 afsuser および logout シェル変数も参照してください。

*backslash_quote* (+)

設定されている場合、バックスラッシュ( '#146;)は常に'#146 ;、 '、および' "'を引用します。 これにより、複雑な引用タスクが簡単になりますが、csh(1)スクリプトで構文エラーが発生する可能性があります。

カタログ

メッセージカタログのファイル名。 設定されている場合、tcshはデフォルトの「tcsh」の代わりに「tcsh。$ \ {catalog}」をメッセージカタログとして使用します。

*cdpath*

現在のディレクトリにサブディレクトリが見つからない場合に、_cd_がサブディレクトリを検索するディレクトリのリスト。

設定すると、組み込みの ls-F のカラー表示が有効になり、-color = auto *が *ls に渡されます。 または、 ls-F のみまたは ls のみに設定して、1つのコマンドのみの色を有効にすることもできます。 何も設定しないことは、*(ls-F ls)*に設定することと同等です。

*colorcat*

設定すると、NLSメッセージファイルのカラーエスケープシーケンスが有効になります。 カラフルなNLSメッセージを表示します。

コマンド(+)

設定されている場合、*-c *フラグ(q.v.)でシェルに渡されたコマンド。

完了(+)

「enhance」に設定すると、完了1)大文字と小文字の区別が無視され、2)ピリオド、ハイフン、アンダースコア(「。」、「-」、「_」)が単語の区切り、ハイフンとアンダースコアが同等と見なされます。 「igncase」に設定すると、完了時に大文字と小文字が区別されなくなります。

継続(+)

コマンドのリストに設定すると、シェルは新しいコマンドを開始する代わりに、リストされたコマンドを続行します。

*continue_args* (+)

continueと同じですが、シェルが実行されます:

Tag Description
echo ‘pwd‘ $argv > ~/.<cmd>_pause; %<cmd>

正しい(+)

「cmd」に設定すると、コマンドのスペルが自動的に修正されます。 「完了」に設定すると、コマンドは自動的に完了します。 「すべて」に設定すると、コマンドライン全体が修正されます。

*csubstnonl* (+)

設定されている場合、コマンド置換の改行と復帰はスペースに置き換えられます。 デフォルトで設定されます。

*cwd*

現在のディレクトリの完全パス名。 dirstack および owd シェル変数も参照してください。

抽出(+)

設定されている場合、「pushd + n」は、nthディレクトリを一番上に回転するのではなく、ディレクトリスタックから抽出します。

*dirsfile* (+)

「dirs -S」および「dirs -L」が履歴ファイルを検索するデフォルトの場所。 設定されていない場合、〜/.cshdirs_が使用されます。 通常、〜/.cshdirs_の前に_〜/.tcshrc_のみが提供されるため、 dirsfile は_〜/.login_ではなく_〜/.tcshrc_に設定する必要があります。

*dirstack* (+)

ディレクトリスタック上のすべてのディレクトリの配列。 「$ dirstack [1]」は現在の作業ディレクトリ、「$ dirstack [2]」はスタックの最初のディレクトリなどです。 現在の作業ディレクトリは「$ dirstack [1]」ですが、ディレクトリスタックの置換などでは「= 0」です。 dirstack を設定してスタックを任意に変更できますが、最初の要素(現在の作業ディレクトリ)は常に正しいです。 cwd および owd シェル変数も参照してください。

*dspmbyte* (+)

「バージョン」シェル変数の一部として「dspm」がリストされている場合に影響があります。 「euc」に設定すると、EUC漢字(日本語)コードの表示と編集が可能になります。 「sjis」に設定すると、Shift-JIS(日本語)コードの表示と編集が可能になります。 「big5」に設定すると、Big5(中国語)コードの表示と編集が可能になります。 「utf8」に設定すると、Utf8(Unicode)コードの表示と編集が可能になります。 次の形式に設定すると、元のマルチバイトコード形式の表示と編集が可能になります。

Tag

説明

>設定dspmbyte = 0000 …​.(256バイト)…​. 0000

このテーブルには*ちょうど* 256バイトが必要です。 256文字の各文字は、(左から右へ)ASCIIコード0x00、0x01、…​に対応します。 0xff。 各文字は0、1、2、および3の番号に設定されます。 各番号の意味は次のとおりです:0 …​ マルチバイト文字には使用されません。 1 …​ マルチバイト文字の最初のバイトに使用されます。 2 …​ マルチバイト文字の2番目のバイトに使用されます。 3 …​ マルチバイト文字の最初のバイトと2番目のバイトの両方に使用されます。

例:「001322」に設定すると、最初の文字(ASCIIコードの0x00を意味する)と2番目の文字(ASCIIコードの0x01を意味する)は「0」に設定されます。 その場合、マルチバイト文字には使用されません。 3番目の文字(0x02)は「1」に設定されており、マルチバイト文字の最初のバイトに使用されていることを示しています。 4番目の文字(0x03)は「3」に設定されています。 マルチバイト文字の最初のバイトと2番目のバイトの両方に使用されます。 5番目と6番目の文字(0x04,0x05)は「2」に設定されており、マルチバイト文字の2番目のバイトに使用されていることを示しています。

GNUのfileutilsバージョンのlsは、-N(--literal)オプションなしではマルチバイトのファイル名を表示できません。 このバージョンを使用している場合、dspmbyteの2番目の単語を「ls」に設定します。 そうでない場合、たとえば、「ls-F -l」はマルチバイトのファイル名を表示できません。

注:この変数は、コンパイル時にKANJIおよびDSPMBYTEが定義されている場合にのみ使用できます。

*dunique* (+)

設定されている場合、_pushd_は、_name_のすべてのインスタンスをスタックから削除してから、スタックにプッシュします。

  • エコー *

設定されている場合、各コマンドとその引数は、実行される直前にエコーされます。 非組み込みコマンドの場合、エコーする前にすべての展開が行われます。 これらの置換は選択的に行われるため、コマンドとファイル名の置換の前に組み込みコマンドがエコーされます。* -x *コマンドラインオプションで設定します。

*echo_style* (+)

_echo_ビルトインのスタイル。 に設定することができます

Tag

説明

bsd

最初の引数が「-n」の場合、改行をエコーし​​ないでください。

sysv

エコー文字列のバックスラッシュ付きエスケープシーケンスを認識します。

both

「-n」フラグとバックスラッシュ付きエスケープシーケンスの両方を認識します。デフォルト。

none

どちらも認識しません。

デフォルトでローカルシステムのデフォルトに設定されます。 BSDおよびSystem Vオプションについては、適切なシステムの_echo_(1)のマニュアルページで説明されています。

編集(+)

設定すると、コマンドラインエディタが使用されます。 対話型シェルではデフォルトで設定されます。

省略記号(+)

設定されている場合、 '%c'/'%。'および '%C’プロンプトシーケンス( prompt シェル変数を参照)は、 '/<skipped>'の代わりに省略記号( '…​')でスキップされたディレクトリを示します。

無視(+)

補完によって無視されるファイル名の接尾辞をリストします。

*filec*

_tcsh_では、補完が常に使用され、この変数はデフォルトで無視されます。 edit が設定されていない場合、従来の_csh_補完が使用されます。 _csh_で設定されている場合、ファイル名補完が使用されます。

*gid* (+)

ユーザーの実際のグループID。

グループ(+)

ユーザーのグループ名。

*histchars*
*History substitution* (q.v.)で使用される文字を決定する文字列値。 その値の最初の文字が履歴置換文字として使用され、デフォルトの文字「!」が置き換えられます。 値の2番目の文字は、クイック置換で文字「^」を置き換えます。
*histdup* (+)

履歴リスト内の重複エントリの処理を制御します。 「すべて」に設定すると、一意の履歴イベントのみが履歴リストに入力されます。 「prev」に設定され、最後の履歴イベントが現在のコマンドと同じ場合、現在のコマンドは履歴に入力されません。 「消去」に設定され、同じイベントが履歴リストで見つかった場合、その古いイベントは消去され、現在のイベントが挿入されます。 「prev」および「all」オプションは履歴イベントの番号を付け直すため、ギャップはありません。

*histfile* (+)

「history -S」および「history -L」が履歴ファイルを検索するデフォルトの場所。 設定されていない場合、〜/.history_が使用されます。 histfile は、異なるマシン間で同じホームディレクトリを共有する場合、または異なる端末で別々の履歴を保存する場合に役立ちます。 通常は〜/.history_の前に_〜/.tcshrc_のみが提供されるため、 histfile は_〜/.login_ではなく_〜/.tcshrc_で設定する必要があります。

*histlit* (+)

設定されている場合、組み込みコマンドとエディターコマンド、および savehist メカニズムは、履歴リスト内の行のリテラル(非展開)形式を使用します。 toggle-literal-history editorコマンドも参照してください。

歴史

最初の単語は、保存する履歴イベントの数を示します。 オプションの2番目の単語(+)は、履歴が印刷される形式を示します。指定しない場合は、「%h \ t%T \ t%R \ n」が使用されます。 フォーマットシーケンスは、以下の*プロンプト*で説明されています。 「%R」の変数の意味に注意してください。 デフォルトでは「100」に設定されています。

ホーム

呼び出し元のホームディレクトリに初期化されます。 「」のファイル名展開は、この変数を指します。

*ignoreeof*

空の文字列または「0」に設定され、入力デバイスが端末の場合、_end-of-file_コマンド(通常は空の行に「^ D」を入力してユーザーが生成)により、シェルは「Use」を出力します終了」の代わりに「終了」を選択してtcshを終了します。 これにより、シェルが誤って削除されるのを防ぎます。 歴史的に、この設定は26の連続したEOFの後に終了し、無限ループを回避しました。 番号_n_に設定すると、シェルは_n-1_連続したend-of-filesを無視し、nthで終了します。 (+)設定されていない場合、「1」が使用されます。つまり、シェルは単一の「^ D」で終了します。

*implicitcd* (+)

設定すると、シェルはコマンドとして入力されたディレクトリ名を、そのディレクトリへの変更要求であるかのように扱います。 _verbose_に設定すると、ディレクトリの変更が標準出力にエコーされます。 この動作は、非対話型のシェルスクリプト、または複数の単語を含むコマンド文字列では禁止されています。 ディレクトリの変更は、同様の名前のコマンドの実行よりも優先されますが、エイリアスの置換後に行われます。 チルダと変数の展開は期待どおりに機能します。

入力モード(+)

「挿入」または「上書き」に設定されている場合、各行の先頭でエディターをその入力モードにします。

*killdup* (+)

キルリング内の重複エントリの処理を制御します。 「すべて」に設定すると、一意の文字列のみがキルリングに入力されます。 「prev」に設定され、最後に削除された文字列が現在削除された文字列と同じ場合、現在の文字列はリングに入力されません。 「消去」に設定され、キルリングで同じ文字列が見つかった場合、古い文字列が消去され、現在の文字列が挿入されます。

殺人(+)

メモリ内に保持するキルされた文字列の数を示します。 デフォルトでは「30」に設定されています。 未設定または「2」未満に設定すると、シェルは最後に削除された文字列のみを保持します。 文字列は、テキストの文字列を削除(キル)するエディターコマンドによってキルリングに入れられます。 backward-delete-word _、 kill-line_など、および_copy-region-as-kill_コマンド。 yank_エディターコマンドは、最後に削除された文字列をコマンドラインにヤンクし、_yank-pop(*エディターコマンド*を参照)は以前に削除された文字列をヤンクします。

リストフラグ(+)

「x」、「a」、「A」、またはそれらの任意の組み合わせ(「xA」など)に設定されている場合、それらは_ls-F_のフラグとして使用され、「ls -xF」、「ls- Fa '、' ls -FA '、または組み合わせ(たとえば、' ls -FxA '):' a 'はすべてのファイルを表示します('。 'で始まる場合でも)、' A 'は'。 '以外のすべてのファイルを表示します「..」および「x」は、ダウンではなく横方向にソートされます。 listflags の2番目の単語が設定されている場合は、「ls(1)」へのパスとして使用されます。

*listjobs* (+)

設定すると、ジョブが中断されたときにすべてのジョブがリストされます。 「long」に設定すると、リストは長い形式になります。

リストリンク(+)

設定すると、_ls-F_組み込みコマンドは、各シンボリックリンクが指すファイルのタイプを表示します。

*listmax* (+)

list-choices editorコマンドが最初に確認せずにリストするアイテムの最大数。

*listmaxrows* (+)

list-choices editorコマンドが最初に確認せずにリストするアイテムの最大行数。

*loginsh* (+)

ログインシェルの場合、シェルによって設定されます。 シェル内で設定または設定解除しても効果はありません。 shlvl も参照してください。

ログアウト(+)

シェルは、通常のログアウトの前に「通常」、自動ログアウトの前に「自動」、シェルがハングアップ信号によって殺された場合は「ハングアップ」に設定します(信号処理*を参照)。 *autologout シェル変数も参照してください。

郵便物

空白で区切られ、オプションで数字が前に付く、受信メールをチェックするファイルまたはディレクトリの名前。 各プロンプトの前に、最後のチェックから10分が経過した場合、シェルは各ファイルをチェックし、「You have new mail。」(または、 mail に複数のファイルが含まれる場合、「You have new mail in name。」)と言います。ファイルサイズのサイズはゼロより大きく、変更時間はアクセス時間より長くなります。

ログインシェルを使用している場合、シェルの起動後に変更されない限り、メールファイルは報告されず、重複した通知を防止します。 ほとんどのログインプログラムは、ログイン時にメールがあるかどうかを示します。

*mail* で指定されたファイルがディレクトリである場合、シェルはそのディレクトリ内の各ファイルを個別のメッセージとしてカウントし、「You have _n_ mails。」または「You have _n_ mails in _name_。」を適宜報告します。 この機能は、主にAndrew Mail Systemなど、この方法でメールを保存するシステム向けに提供されています。
*mail* の最初の単語が数値の場合、別のメールチェック間隔(秒単位)と見なされます。

非常にまれな状況では、シェルは「新しいメールがある」の代わりに「メールがある」と報告することがあります。

マッチビープ(+)

「なし」に設定すると、完了音は鳴りません。 「nomatch」に設定すると、一致しない場合にのみビープ音が鳴ります。 「あいまい」に設定すると、複数の一致がある場合にビープ音が鳴ります。 「notunique」に設定すると、完全に一致するものとそれ以外の一致するものがある場合にビープ音が鳴ります。 設定されていない場合、「あいまい」が使用されます。

*nobeep* (+)

設定すると、ビープ音は完全に無効になります。 visiblebell もご覧ください。

*noclobber*

設定されている場合、 link:#7 [入力/出力] セクションで説明されているように、ファイルが誤って破棄されず、「>>」リダイレクトが既存のファイルを参照するように、出力リダイレクトに制限が課されます。

うなずき

設定されている場合、時間の変更時に*プロンプト*時間指定子で「DING!」の印刷を無効にします。

*noglob*

設定すると、ファイル名の置換*および*ディレクトリスタックの置換(q.v.)が禁止されます。 これは、ファイル名を処理しないシェルスクリプト、またはファイル名のリストが取得された後、さらに展開することは望ましくありません。

の漢字(+)

設定され、シェルが漢字をサポートしている場合( version シェル変数を参照)、メタキーを使用できるように無効になります。

*nonomatch*

設定されている場合、既存のファイルと一致しない Filename substitution または Directory stack substitution (q.v.)は、エラーを引き起こすのではなく、そのまま残されます。 置換の形式が正しくないことは依然としてエラーです。たとえば、「echo [」でもエラーが発生します。

*nostat* (+)

完了操作中に_stat_(2)されるべきではないディレクトリのリスト(またはディレクトリに一致するglob-patterns。 Filename substitution を参照)。 これは通常、stat(2)に時間がかかりすぎるディレクトリ、たとえば_/afs_を除外するために使用されます。

通知

設定すると、シェルはジョブの完了を非同期に通知します。 デフォルトでは、プロンプトを印刷する直前にジョブの完了を表示します。

*oid* (+)

ユーザーの実際の組織ID。 (ドメイン/OSのみ)

*owd* (+)

_cd_および_pushd_で使用される「-」に相当する古い作業ディレクトリ。 cwd および dirstack シェル変数も参照してください。

  • パス *

実行可能なコマンドを探すディレクトリのリスト。 ヌルワードは、現在のディレクトリを指定します。* path 変数がない場合は、フルパス名のみが実行されます。 *path は、起動時にシェルによって PATH 環境変数から設定されます。 PATH が存在しない場合は、 '(/usr/local/bin/usr/bsd/bin/usr/bin。) ' シェルは、 path の最初または最後に「。」を挿入するか、コンパイル方法に応じて完全に省略します。 version シェル変数を参照してください。 -c オプションも -t オプションも指定されていないシェルは、_〜/.tcshrc_を読み取った後、 path がリセットされるたびに、 path のディレクトリの内容をハッシュします。 シェルがアクティブなときに path のディレクトリに新しいコマンドを追加すると、シェルがそれを見つけるために_rehash_を実行する必要がある場合があります。

*printexitvalue* (+)

設定され、対話型プログラムがゼロ以外のステータスで終了した場合、シェルは「Exit status 」を出力します。

  • プロンプト *

端末から各コマンドを読み取る前に出力される文字列。* プロンプト*には、次のフォーマットシーケンス(+)のいずれかを含めることができます。これらは、指定された情報に置き換えられます。

Tag

説明

%/

現在の作業ディレクトリ。

%~

現在の作業ディレクトリ。ただし、「〜」で表されるホームディレクトリと「* user」で表される Filename substitution による他のユーザーのホームディレクトリ。 「〜user」置換は、現在のセッションのパス名でシェルがすでに「〜user」を使用している場合にのみ発生します。

%c [[_ n ]、%。[[0] _n]

現在の作業ディレクトリの末尾コンポーネント、または数字_n_が指定されている場合は_n_末尾コンポーネント。 _n_が「0」で始まる場合、スキップされたコンポーネントの数は、「/<skipped> trailing」の形式で末尾のコンポーネントの前に配置されます。 ellipsis シェル変数が設定されている場合、スキップされたコンポーネントは省略記号で表されるため、全体が「…​末尾」になります。 「〜」の置換は上記の「%〜」のように行われますが、「〜」コンポーネントは後続コンポーネントをカウントするときに無視されます。

%C

%cと似ていますが、「〜」の置換はありません。

%h、%!、!

現在の履歴イベント番号。

%M

完全なホスト名。

%m

最初の「。」までのホスト名。

%S(%s)

スタンドアウトモードを開始(停止)します。

%B(%b)

太字モードを開始(停止)します。

%U(%u)

下線モードを開始(停止)します。

%t、%@

12時間AM/PM形式の時刻。

%T

「%t」と似ていますが、24時間形式です(ただし、 ampm シェル変数を参照)。

%p

12時間制のAM/PM形式での秒単位の「正確な」時刻。

%P

「%p」と似ていますが、24時間形式です(ただし、 ampm シェル変数を参照してください)。

_c_

_c_は、_bindkey_と同様に解析されます。

^ c

_c_は、_bindkey_と同様に解析されます。

%%

独身者 '%'。

%n

ユーザー名。

%j

ジョブの数。

%d

「日」形式の曜日。

%D

「dd」形式の日。

%w

「月」形式の月。

%W

「mm」形式の月。

%y

「yy」形式の年。

%Y

「yyyy」形式の年。

%l

シェルのtty。

%L

プロンプトの終わりから表示の終わりまたは行の終わりまでクリアします。

%$

「$」の直後にシェルまたは環境変数名を展開します。

%#

通常のユーザーの場合は「>」(または promptchars シェル変数の最初の文字)、スーパーユーザーの場合は「#」(または promptchars の2番目の文字)。

%\ {_ string_%}

リテラルエスケープシーケンスとして_string_を含めます。 端末属性を変更するためにのみ使用し、カーソル位置を移動しないでください。 これは、 prompt の最後のシーケンスにすることはできません。

%?

プロンプトの直前に実行されたコマンドの戻りコード。

%R

*prompt2* では、パーサーのステータス。 *prompt3* で、修正された文字列。 *history* では、履歴文字列。

「%B」、「%S」、「%U」、および「%\ {_ string_%}」は、8ビットクリーンシェルでのみ使用できます。 version シェル変数を参照してください。

太字、目立つ、下線のシーケンスは、スーパーユーザーシェルを区別するためによく使用されます。 例えば、

Tag

説明

set prompt = "%m [%h]%B [%@]%b [%/]鳴った? "tut [37] [2:54 pm] [/usr/accts/sys]鳴った? _

「%t」、「%@」、「%T」、「%p」、または「%P」が使用されており、 noding が設定されていない場合、時間の変化に「DING!」 、「:00」分)実際の時間の代わりに。

対話型シェルでは、デフォルトで「%#」に設定されます。

  • プロンプト2 *(+)

_while_ループと_foreach_ループ、および「#146;」で終わる行の後にプロンプ​​トを表示する文字列。 prompt (q.v.)と同じフォーマットシーケンスを使用できます。 「%R」の変数の意味に注意してください。 デフォルトで「%R? 」インタラクティブシェルで。

  • プロンプト3 *(+)

自動スペル訂正を確認するときにプロンプ​​トを表示する文字列。 prompt (q.v.)と同じフォーマットシーケンスを使用できます。 「%R」の変数の意味に注意してください。 デフォルトで「CORRECT>%R(y | n | e | a)」に設定されていますか? 」インタラクティブシェルで。

プロンプト文字(+)

(2文字の文字列に)設定されている場合、 prompt シェル変数の「%#」フォーマットシーケンスは、通常のユーザーの最初の文字とスーパーユーザーの2番目の文字に置き換えられます。

*pushdtohome* (+)

設定されている場合、_cd_のように、_pushd_は引数なしで「pushd〜」します。

プッシュサイレント(+)

設定されている場合、_pushd_および_popd_はディレクトリスタックを出力しません。

*recexact* (+)

設定した場合、より長い一致が可能な場合でも、完全一致で完了します。

*recognize_only_executables* (+)

設定されている場合、コマンドリストには、実行可能なパス内のファイルのみが表示されます。 スロー。

*rmstar* (+)

設定すると、「rm *」が実行される前にユーザーにプロンプ​​トが表示されます。

*rprompt* (+)

プロンプトが左側に表示されているときに、画面の右側(コマンド入力後)に印刷する文字列。 prompt と同じフォーマット文字を認識します。 コマンド入力が不明瞭にならないように、必要に応じて自動的に消えて再表示され、プロンプト、コマンド入力、およびそれ自体が最初の行に収まる場合にのみ表示されます。 edit が設定されていない場合、 rprompt はプロンプトの後、コマンド入力の前に出力されます。

*savedirs* (+)

設定すると、シェルは終了する前に「dirs -S」を実行します。 最初の単語が数字に設定されている場合、最大でその数のディレクトリスタックエントリが保存されます。

*savehist*

設定すると、シェルは終了する前に「history -S」を実行します。 最初の単語が数字に設定されている場合、最大でその数の行が保存されます。 (番号は history 以下でなければなりません。)2番目の単語が 'merge’に設定されている場合、履歴リストは既存の履歴ファイル(存在する場合)を置き換えるのではなく、既存の履歴ファイルとマージされ、時間でソートされますスタンプと最新のイベントが保持されます。 (+)

スケジュール(+)

_sched_組み込みコマンドがスケジュールされたイベントを出力する形式。指定しない場合は、「%h \ t%T \ t%R \ n」が使用されます。 フォーマットシーケンスについては、上記の*プロンプト*で説明しています。 「%R」の変数の意味に注意してください。

シェル

シェルが存在するファイル。 これは、実行ビットが設定されているがシステムによって実行可能でないファイルを解釈するためにシェルをフォークする際に使用されます。 (* Builtinおよび非組み込みコマンドの実行*の説明を参照してください。)シェルの(システム依存の)ホームに初期化されます。

*shlvl* (+)

ネストされたシェルの数。 ログインシェルで1にリセットします。 loginsh も参照してください。

状態

最後のコマンドによって返されたステータス。 異常終了した場合、ステータスに0200が追加されます。 失敗した組み込みコマンドは終了ステータス「1」を返し、他のすべての組み込みコマンドはステータス「0」を返します。

シンボリックリンク(+)

シンボリックリンク(「シンボリックリンク」)の解像度を制御するために、いくつかの異なる値に設定できます。

「chase」に設定すると、現在のディレクトリがシンボリックリンクを含むディレクトリに変更されるたびに、リンクが指すディレクトリの実際の名前に展開されます。 これはユーザーのホームディレクトリでは機能しません。これはバグです。

「無視」に設定すると、シェルは、リンクが交差する前に、現在のディレクトリを基準にして現在のディレクトリを作成しようとします。 つまり、シンボリックリンクを介してcdingを実行し、その後「cd ..」ingを実行すると元のディレクトリに戻ります。 これは組み込みコマンドとファイル名補完のみに影響します。

「展開」に設定すると、シェルはパス名のように見える引数を実際に展開することにより、シンボリックリンクを修正しようとします。 これは、ビルトインだけでなく、すべてのコマンドに影響します。 残念ながら、これはコマンドオプションに埋め込まれているファイル名など、認識しにくいファイル名では機能しません。 引用符で囲むことにより、展開を防ぐことができます。 この設定は通常最も便利ですが、展開する必要のある引数を認識できない場合は誤解を招き、混乱を招く場合があります。 妥協点は、「無視」を使用し、必要に応じてエディターコマンド_normalize-path_(デフォルトでは^ X-nにバインド)を使用することです。

いくつかの例は順番に並んでいます。 最初に、いくつかのplayディレクトリを設定しましょう。

Tag

説明

cd/tmp> mkdir from/src to>> ln -s from/src to/dst

*symlinks* が設定されていない場合の動作は次のとおりです。

Tag

説明

cd/tmp/to/dst; echo $ cwd/tmp/to/dst> cd ..; echo $ cwd/tmp/from

*symlinks* が「chase」に設定されている場合の動作は、

Tag

説明

cd/tmp/to/dst; echo $ cwd/tmp/from/src> cd ..; echo $ cwd/tmp/from

*symlinks* を「ignore」に設定した場合の動作は、

Tag

説明

cd/tmp/to/dst; echo $ cwd/tmp/to/dst> cd ..; echo $ cwd/tmp/to

次に、 symlinks を「expand」に設定した場合の動作を示します。

Tag

説明

cd/tmp/to/dst; echo $ cwd/tmp/to/dst> cd ..; echo $ cwd/tmp/to> cd/tmp/to/dst; echo $ cwd/tmp/to/dst> cd ".."; echo $ cwd/tmp/from>/bin/echo ../tmp/to>/bin/echo ".." ..

「展開」展開は、1)_cd_などのビルトインの「無視」と同様に機能し、2)クォートによって防止され、3)ファイル名が非ビルトインコマンドに渡される前に発生することに注意してください。

*tcsh* (+)

「R.VV.PP」形式のシェルのバージョン番号。「R」はメジャーリリース番号、「VV」は現在のバージョン、「PP」はパッチレベルです。

期間

端末タイプ。 通常は、「起動とシャットダウン」で説明したように_〜/.login_で設定します。

時間

数値に設定した場合、_time_ビルトイン(q.v.)は、CPU秒を超える各コマンドの後に自動的に実行されます。 2番目の単語がある場合、_time_ビルトインの出力のフォーマット文字列として使用されます。 (u)次のシーケンスをフォーマット文字列で使用できます:

Tag

説明

%U

プロセスがユーザーモードでCPU時間を費やした時間。

%S

プロセスがカーネルモードで費やした時間(cpu秒)。

%E

秒単位の経過(ウォールクロック)時間。

%P

(%U +%S)/%Eとして計算されたCPUパーセンテージ。

%W

プロセスがスワップされた回数。

%X

使用される(共有)テキストスペースの平均量(キロバイト単位)。

%D

使用されている(非共有)データ/スタックスペースの平均量(キロバイト単位)。

%K

使用されている合計スペース(%X +%D)(キロバイト単位)。

%M

プロセスがいつでも使用していた最大メモリ(キロバイト単位)。

%F

メジャーページフォールトの数(ページをディスクから取り込む必要がある)。

%R

マイナーページフォールトの数。

%I

入力操作の数。

%O

出力操作の数。

%r

受信したソケットメッセージの数。

%s

送信されたソケットメッセージの数。

%k

受信した信号の数。

%w

自発的なコンテキスト切り替え(待機)の数。

%c

非自発的なコンテキストスイッチの数。

BSDリソース制限機能のないシステムでは、最初の4つのシーケンスのみがサポートされます。 デフォルトの時間形式は、リソース使用状況レポートをサポートするシステムの場合は「%Uu%Ss%E%P%X +%Dk%I +%Oio%Fpf +%Ww」、サポートしないシステムの場合は「%Uu%Ss%E%P」です。 。

SequentのDYNIX/ptxでは、%X、%D、%K、%r、および%sは使用できませんが、次の追加シーケンスは次のとおりです。

%Y

実行されたシステムコールの数。

%Z

オンデマンドでゼロで埋められたページの数。

%i

プロセスの常駐セットサイズがカーネルによって増加した回数。

%d

プロセスの常駐セットサイズがカーネルによって減少した回数。

%l

実行された読み取りシステムコールの数。

%m

実行された書き込みシステムコールの数。

%p

rawディスクデバイスからの読み取り数。

%q

rawディスクデバイスへの書き込みの数。

デフォルトの時間形式は「%Uu%Ss%E%P%I +%Oio%Fpf +%Ww」です。 マルチプロセッサでは、CPUの割合が100%を超える場合があることに注意してください。

*tperiod* (+)

_periodic_特別なエイリアスの実行間の期間(分単位)。

*tty* (+)

ttyの名前、または接続されていない場合は空。

*uid* (+)

ユーザーの実際のユーザーID。

ユーザー

ユーザーのログイン名。

  • 詳細 *

設定されている場合、履歴置換(存在する場合)の後に、各コマンドの単語が印刷されます。* -v *コマンドラインオプションで設定します。

バージョン(+)

バージョンIDスタンプ。 これには、シェルのバージョン番号( tcsh を参照)、起源、リリース日、ベンダー、オペレーティングシステムおよびマシン( VENDOROSTYPE および MACHTYPE を参照)と、設定されたオプションのコンマ区切りリストが含まれます。コンパイル時間。 ディストリビューションでデフォルトで設定されているオプションが記載されています。

Tag

説明

8b

シェルは8ビットクリーンです。デフォルト

7b

シェルは8ビットクリーンではありません

wide

シェルはクリーンなマルチバイトエンコーディングです(UTF-8など)

nls

システムのNLSが使用されます。 NLSを備えたシステムのデフォルト

lf

ログインシェルは、〜/.tcshrc_および〜/.history_の後ではなく_/etc/csh.cshrc_および_〜/.login_の前ではなく_/etc/csh.login_の前に実行されます。

dl

「。」はセキュリティのために path の最後に置かれます。デフォルト

nd

セキュリティのため path から「。」が省略されています

vi

emacs_ではなく、_vi-style編集がデフォルトです

dtr

ログインシェルが終了時にDTRをドロップする

bye

_bye_は_logout_の同義語であり、_log_は_watchlog_の別名です。

al

  • 自動ログアウト*が有効になっています。デフォルト

kan

*nokanji* シェル変数が設定されていない限り、ロケール設定に従って適切な場合は漢字が使用されます

sm

システムの_malloc_(3)が使用されます

hb

シェルスクリプトの実行時に「#!<program> <args>」規則がエミュレートされます

ng

_newgrp_ビルトインが利用可能です

rh

シェルは REMOTEHOST 環境変数を設定しようとします

afs

ローカル認証が失敗した場合、シェルはkerberosサーバーでパスワードを検証します。 afsuser シェル変数または AFSUSER 環境変数は、設定されている場合はローカルユーザー名をオーバーライドします。

管理者は、ローカルバージョンの違いを示すために追加の文字列を入力できます。

*visiblebell* (+)

設定されている場合、可聴ベルではなく画面フラッシュが使用されます。 nobeep も参照してください。

ウォッチ(+)

ログインとログアウトを監視するユーザー/端末のペアのリスト。 ユーザーが「任意」の場合、指定されたユーザーのすべての端末が監視され、逆も同様です。 watch を「(any any)」に設定すると、すべてのユーザーと端末が監視されます。 例えば、

Tag

説明

set watch =(george ttyd1 any console $ user any)

ttyd1上のユーザー「george」、コンソール上のすべてのユーザー、および任意の端末上の自分(または侵入者)のアクティビティを報告します。

ログインとログアウトはデフォルトで10分ごとにチェックされますが、 watch の最初の単語を数に設定して、数分ごとにチェックすることができます。 例えば、

Tag

説明

set watch =(いずれか1つ)

1分ごとにログイン/ログアウトを報告します。 せっかちな人のために、_log_組み込みコマンドはいつでも*ウォッチ*レポートをトリガーします。 watch が最初に設定されると、現在のすべてのログインが(_log_ビルトインと同様に)報告されます。

*who* シェル変数は、 *watch* レポートの形式を制御します。

(+)

*watch* メッセージのフォーマット文字列。 次のシーケンスは、指定された情報に置き換えられます。

Tag

説明

%n

ログイン/ログアウトしたユーザーの名前。

%a

観察されたアクション、つまり「ログオン」、「ログオフ」、または「置き換えられた_olduser_オン」。

%l

ユーザーがログイン/ログアウトした端末(tty)。

%M

リモートホストの完全なホスト名、またはログイン/ログアウトがローカルホストからのものである場合は「ローカル」。

%m

最初の「。」までのリモートホストのホスト名。 フルネームは、IPアドレスまたはX Window Systemディスプレイの場合に出力されます。

%Mと%mは、_/etc/utmp_にリモートホスト名を保存するシステムでのみ使用できます。 設定しない場合、「%nは%aから%a%lを持っています。」が使用されます。または、リモートホスト名を保存しないシステムでは「%nは%a%lを持っています。」が使用されます。

*wordchars* (+)

forward-word _、 backward-word_などのエディターコマンドによって単語の一部と見なされる英数字以外の文字のリスト。 設定されていない場合、「*?_-。[]〜=」が使用されます。

環境

Tag

説明

*AFSUSER* (+)
*afsuser* シェル変数と同等です。
  • 列 *

ターミナルの列数。* 端末管理*を参照してください。

表示

X Window Systemで使用されます(X(1)を参照)。 設定すると、シェルは autologout (q.v.)を設定しません。

  • 編集者 *

デフォルトのエディターへのパス名。* VISUAL *環境変数および_run-fg-editor_ editorコマンドも参照してください。

グループ(+)

*group* シェル変数と同等です。

ホーム

*home* シェル変数と同等です。

ホスト(+)

gethostname(2)システムコールによって決定される、シェルが実行されているマシンの名前に初期化されます。

ホストタイプ(+)

コンパイル時に決定された、シェルが実行されているマシンのタイプに初期化されます。 この変数は廃止されており、将来のバージョンで削除される予定です。

*HPATH* (+)

run-help editorコマンドがコマンドのドキュメントを検索する、コロンで区切られたディレクトリのリスト。

*LANG*

優先キャラクター環境を提供します。 *ネイティブ言語システムのサポート*を参照してください。

*LC_CTYPE*

設定すると、ctype文字の処理のみが変更されます。 *ネイティブ言語システムのサポート*を参照してください。

*LINES*

端末の行数。 *端末管理*を参照してください。

*LS_COLORS*

この変数の形式は、* termcap(5)*ファイル形式を連想させます。 「xx = string」形式の式のコロン区切りリスト。「_ xx_」は2文字の変数名です。 関連するデフォルトの変数は次のとおりです。

Tag Description
 

|Tag |Description |no      0 |Normal (non-filename) text |fi      0 |Regular file |di      01;34 |Directory |ln      01;36 |Symbolic link |pi      33 |Named pipe (FIFO) |so      01;35 |Socket |do      01;35 |Door |bd      01;33 |Block device |cd      01;32 |Character device |ex      01;32 |Executable file |mi      (none) |Missing file (defaults to fi) |or      (none) |Orphaned symbolic link (defaults to ln) |lc      ^[[Left code |rc      m |Right code |ec      (none) |End code (replaces lc+no+rc)

デフォルトから変更する変数のみを含める必要があります。

ファイル名は、ファイル名拡張子に基づいて色分けすることもできます。 これは、構文* " ext = string" を使用して LS_COLORS 変数で指定されます。 たとえば、ISO 6429コードを使用して、すべてのC言語ソースファイルを青色にするには、* "。c = 34" *を指定します。 これにより、。c *で終わるすべてのファイルが青(34)色になります。

制御文字は、Cスタイルのエスケープ表記またはsttyのような^表記のいずれかで記述できます。 Cスタイルの表記では、エスケープに* ^ [、通常のスペース文字に *_ 、削除に*?が追加されます。 さらに、 ^ [エスケープ文字を使用して、 ^ [、 *^:*および *= のデフォルトの解釈をオーバーライドできます。

各ファイルは <lc> <color-code> <rc> <filename> <ec> として書き込まれます。 <ec> コードが未定義の場合は、代わりにシーケンス <lc> <no> <rc> が使用されます。 これは一般に使用する方が便利ですが、一般的ではありません。 左、右、および終了コードが提供されているため、共通の部分を何度も入力する必要がなく、奇妙な端末をサポートできます。端末がISO 6429カラーシーケンスを使用せず、別のシステムを使用している場合を除き、通常はこれらをまったく変更する必要はありません。

端末がISO 6429カラーコードを使用している場合、セミコロンで区切られた数値コマンドからタイプコード( lcrc 、および ec コードを除くすべて)を構成できます。 最も一般的なコマンドは次のとおりです。

Tag Description
 

|Tag |Description |0 |to restore default color |1 |for brighter colors |4 |for underlined text |5 |for flashing text |30 |for black foreground |31 |for red foreground |32 |for green foreground |33 |for yellow (or brown) foreground |34 |for blue foreground |35 |for purple foreground |36 |for cyan foreground |37 |for white (or gray) foreground |40 |for black background |41 |for red background |42 |for green background |43 |for yellow (or brown) background |44 |for blue background |45 |for purple background |46 |for cyan background |47 |for white (or gray) background

すべてのコマンドがすべてのシステムまたはディスプレイデバイスで機能するとは限りません。

一部の端末プログラムは、デフォルトの終了コードを正しく認識しません。 ディレクトリリストを作成した後にすべてのテキストが色付けされる場合は、 no および fi コードを0から標準の前景色および背景色の数値コードに変更してみてください。

*MACHTYPE* (+)

コンパイル時に決定されるマシンタイプ(マイクロプロセッサクラスまたはマシンモデル)。

ノアバインド(+)

設定されている場合、印刷可能文字は_self-insert-command_に再バインドされません。 *ネイティブ言語システムのサポート*を参照してください。

*OSTYPE* (+)

コンパイル時に決定されるオペレーティングシステム。

  • パス *

実行可能ファイルを検索するディレクトリのコロン区切りのリスト。* path *シェル変数と同等ですが、形式は異なります。

*PWD* (+)
*cwd* シェル変数と同等ですが、同期されていません。実際のディレクトリ変更後にのみ更新されます。

リモートホスト(+)

ユーザーがリモートでログインしたホスト。これが該当し、シェルがそれを判別できる場合。 シェルがそのようにコンパイルされた場合にのみ設定します。 version シェル変数を参照してください。

*SHLVL* (+)
*shlvl* シェル変数と同等です。
*SYSTYPE* (+)

現在のシステムタイプ。 (ドメイン/OSのみ)

期間

*term* シェル変数と同等です。
*TERMCAP*

端末機能文字列。 *端末管理*を参照してください。

ユーザー

*user* シェル変数と同等です。

ベンダー(+)

コンパイル時に決定されるベンダー。

  • ビジュアル *

デフォルトのフルスクリーンエディタへのパス名。* EDITOR *環境変数および_run-fg-editor_ editorコマンドも参照してください。

ファイル

Tag

説明

/etc/csh.cshrc

すべてのシェルが最初に読み取ります。 ConvexOS、Stellix、およびIntelは_/etc/cshrc_を使用し、NeXTは_/etc/cshrc.std_を使用します。 A/UX、AMIX、Cray、IRIXには_csh_(1)に相当するものはありませんが、このファイルは_tcsh_に読み込まれます。 Solaris 2.xにもありませんが、tcsh_は/etc/.cshrc_を読み取ります。 (+)

/etc/csh.login

/etc/csh.cshrc_の後のログインシェルによって読み取られます。 ConvexOS、Stellix、Intelは/etc/login_を使用し、NeXTは_/etc/login.std_を使用し、Solaris 2.xは_/etc/.login_を使用し、A/UX、AMIX、Cray、IRIXは_/etc/cshrc_を使用します。

〜/.tcshrc(+)

_/etc/csh.cshrc_またはそれに相当するものの後のすべてのシェルによって読み取られます。

〜/.cshrc

〜/.tcshrc_が存在しない場合は、/etc/csh.cshrc_またはそれに相当するものの後、すべてのシェルが読み取ります。 このマニュアルでは、「〜/.tcshrc」を使用して「〜/.tcshrc」、または「〜/.tcshrc」が見つからない場合は「〜/.cshrc」を意味します。

〜/.history

*savehist* が設定されている場合、_〜/.tcshrc_の後にログインシェルによって読み取られますが、 *histfile* も参照してください。

〜/.login

〜/.tcshrc_または〜/.history_の後のログインシェルによって読み取られます。 シェルは、〜/.tcshrc_および〜/.history_の後ではなく、前に_〜/.login_を読み取るようにコンパイルできます。 version シェル変数を参照してください。

〜/.cshdirs(+)

*savedirs* が設定されている場合、_〜/.login_の後にログインシェルによって読み取られますが、 *dirsfile* も参照してください。

/etc/csh.logout

ログアウト時にログインシェルによって読み取られます。 ConvexOS、Stellix、およびIntelは_/etc/logout_を使用し、NeXTは_/etc/logout.std_を使用します。 A/UX、AMIX、Cray、IRIXには_csh_(1)に相当するものはありませんが、このファイルは_tcsh_に読み込まれます。 Solaris 2.xにもありませんが、tcsh_は/etc/.logout_を読み取ります。 (+)

〜/.logout

ログアウト時に_/etc/csh.logout_またはそれに相当するものの後にログインシェルによって読み取られます。

/bin/sh

「#」で始まっていないシェルスクリプトを解釈するために使用されます。

_/tmp/sh * _

「<<」の一時ファイル。

/etc/passwd

「〜name」置換のホームディレクトリのソース。

  • スタートアップとシャットダウンバージョン *

新機能(+)

tcshcshtcsh

GNU Emacsまたは_vi_(1)スタイルのキーバインディングをサポートするコマンドラインエディター。* コマンドラインエディター*および*エディターコマンド*を参照してください。

プログラム可能なインタラクティブな単語補完およびリスト。 *完了とリスト*および_complete_および_uncomplete_組み込みコマンドを参照してください。

ファイル名、コマンド、変数のスペル修正(q.v.)。

ドキュメントルックアップ(run-help)、クイックエディターの再起動(run-fg-editor)、コマンド解決(which-command)など、入力されたコマンドの途中で他の便利な機能を実行する*エディターコマンド*(q.v.)。

拡張された履歴メカニズム。 履歴リストのイベントにはタイムスタンプが付いています。 history_コマンドおよび関連するシェル変数、以前に文書化されていない「#」イベント指定子、および History substitution の下の新しい修飾子、 -history history-search- i-search-* vi-も参照してください。 search-* _および_toggle-literal-history_エディターコマンドと histlit シェル変数。

強化されたディレクトリ解析とディレクトリスタック処理。 cd _、 pushd popd_および_dirs_コマンドとそれらに関連するシェル変数、ディレクトリスタック置換の説明、 *dirstackowd および symlinks シェル変数、および_normalize-command_および_normalize-path_エディターコマンドを参照してください。 。

globパターンの否定。 *ファイル名の置換*を参照してください。

新しい*ファイル照会演算子*(q.v.)およびそれらを使用する_filetest_ビルトイン。

スケジュールされたイベント、特別なエイリアス、自動ログアウトとターミナルロック、コマンドのタイミング、ログインとログアウトの監視など、さまざまな*自動、定期、およびタイミングイベント*(q.v.)

ネイティブ言語システム(ネイティブ言語システムサポート*を参照)、OSバリアント機能( OSバリアントサポート*および echo_style シェル変数を参照)およびシステム依存ファイルの場所(* link:#13 [FILES]を参照)のサポート*)。

広範な端末管理機能。 *端末管理*を参照してください。

builtins _、 hup ls-F newgrp printenv which where_(q.v.)などの新しい組み込みコマンド。

有用な情報をシェルで簡単に利用できるようにする新しい変数。 gidloginshoidshlvltcshttyuid 、および version シェル変数と、 HOSTREMOTEHOSTVENDORを参照してください。 OSTYPE *および *MACHTYPE 環境変数。

プロンプト文字列に有用な情報を含めるための新しい構文( prompt を参照)。 ループとスペル修正のための特別なプロンプト( prompt2 および prompt3 を参照)。

読み取り専用変数。 *変数置換*を参照してください。

BUGS

シェルの組み込み関数は、停止/再起動できません。 「a;」という形式のコマンドシーケンスb; c 'も停止が試行されたときに適切に処理されません。 「b」を中断すると、シェルはすぐに「c」を実行します。 この拡張は、_alias_に起因する場合に特に顕著です。 コマンドのシーケンスを()内に配置してサブシェル、つまり「(a; b; c)」にするだけで十分です。

プロセスの開始後のtty出力の制御は基本的なものです。おそらくこれは、誰かが優れた仮想端末インターフェースで作業するように促すでしょう。 仮想端末インターフェイスでは、出力制御を使用してさらに興味深いことができます。

エイリアス置換は、シェルプロシージャを不器用にシミュレートするために最もよく使用されます。エイリアスではなくシェルプロシージャを提供する必要があります。

ループ内のコマンドは履歴リストに配置されません。 制御構造は、組み込みコマンドとして認識されるのではなく、解析される必要があります。 これにより、制御コマンドを任意の場所に配置し、「|」と組み合わせて、「&」および「;」メタ構文とともに使用できます。

_foreach_は、_end_を検索するときにhereドキュメントを無視しません。

コマンド置換の出力で「:」修飾子を使用できるようにする必要があります。

端末がカーソルを上に移動できない場合(つまり、端末タイプが「ダム」)、画面幅より長い行の画面更新は非常に貧弱です。

*HPATH* および *NOREBIND* は環境変数である必要はありません。

「?」、「*」、「[]」を使用しない、または「\ {}」または「〜」を使用するグローブパターンは、正しく無効化されません。

単一コマンド形式の_if_は、式が偽でコマンドが実行されない場合でもリダイレクトを出力します。

_ls-F_は、ファイル名をソートするときにファイル識別文字を含み、ファイル名の制御文字を適切に処理しません。 中断することはできません。

コマンド置換は複数のコマンドと条件をサポートしますが、サイクルまたは後方gotosはサポートしません。

バグをhttp://bugs.gw.com/で報告してください(できれば修正してください)。 tcshの保守とテストを支援する場合は、本文に「subscribe tcsh」[[2]].comに送信してください。

TCSHのT

TENEXは、1972年にデマンドページド仮想メモリオペレーティングシステムの実験として、ボルト、ベラネク&ニューマン(マサチューセッツ州ケンブリッジのシンクタンク)で作成されました。 彼らはDEC PDP-10用の新しいページャーを構築し、それに対応するOSを作成しました。 それは学界で非常に成功しました。

1975年、DECはPDP-10の新しいモデルであるKL10を発表しました。彼らは、新しいボックスのために、BBNからライセンスを取得したTENEXのバージョンのみを持つことを意図していました。 彼らは彼らのバージョンをTOPS-20と呼びました(大文字は商標です)。 多くのTOPS-10ユーザー(「PDP-10のオペレーティングシステム」)が反対しました。したがって、DECは同じハードウェア上で2つの互換性のないシステムをサポートしていることに気付きましたが、PDP-11には6つありました!

TENEX、およびバージョン3のTOPS-20では、ULTCMDと呼ばれるユーザーコードレベルのサブルーチンライブラリを介してコマンドが完了しました。 バージョン3では、DECはそのすべての機能などをモニター(Unixタイプの「カーネル」)に移動し、COMND%JSYS(「SYStemへのジャンプ」命令、スーパーバイザー呼び出しメカニズム[IBMルートも表示されますか? ])。

tcshの作成者は、この機能とTENEXおよびTOPS-20の他のいくつかの機能に感銘を受け、それらを模倣したバージョンのcshを作成しました。

制限事項

システムは、引数リストを10240文字に制限します。

ファイル名の展開を伴うコマンドの引数の数は、引数リストで許可される文字数の1/6に制限されています。

コマンド置換は、引数リストで許可されている文字数を超えて置換することはできません。

ループを検出するために、シェルは単一行の_alias_置換の数を20に制限します。

関連項目

リンク:/tset.1 [tset(1)]リンク:/vi.1 [vi(1)]リンク:/x.1 [x(1)]リンク:/access.2 [アクセス(2)]リンク:/execve.2[execve(2)]リンク:/fork.2 [fork(2)]リンク:/killpg.2 [killpg(2)]リンク:/pipe.2 [pipe(2)]リンク:/setrlimit .2 [setrlimit(2)] link:/sigvec.2 [sigvec(2)] link:/stat.2 [stat(2)] link:/umask.2 [umask(2)] link:/vfork.2 [vfork(2)] link:/wait.2 [wait(2)] link:/malloc.3 [malloc(3)] link:/setlocale.3 [setlocale(3)] link:/tty.4 [tty (4)] link:/a.out.5 [a.out(5)] link:/termcap.5 [termcap(5)] link:/environ.7 [environ(7)] link:/termio.7 [termio(7)]

バージョン

作者

Tag

説明

ウィリアム・ジョイ

csh(1)の原作者

J.E. Kulp、IIASA、ラクセンブルク、オーストリア

ジョブ制御とディレクトリスタック機能

Ken Greer、HP Labs、1981

ファイル名補完

マイク・エリス、フェアチャイルド、1983

コマンド名の認識/完了

ポールプレースウェイ、オハイオ州CIS部、1983-1993

コマンドラインエディター、プロンプトルーチン、新しいglob構文、多数の修正と高速化

カールクラインパステ、CCI 1983-4

特別なエイリアス、ディレクトリスタックの抽出、ログイン/ログアウトの監視、スケジュールされたイベント、新しいプロンプト形式のアイデア

Rayan Zachariassen、トロント大学、1984

_ls-F_および_which_ビルトイン、多数のバグ修正、修正、高速化

カリフォルニア工科大学クリス・キングスレー

高速ストレージアロケータールーチン

クリス・グレブスタッド、TRW、1987

4.3BSD _csh_を_tcsh_に組み込みました

クリストス・S ゾーラス、コーネル大学 EE部、1987-94

HPUX、SVR2およびSVR3へのポート、getwd.cのSysVバージョン、SHORT_STRINGSサポート、sh.glob.cの新しいバージョン

ジェームズ・J・デンプシー、BBN、およびポール・プレースウェイ、OSU、1988

A/UXポート

ダニエル・ロング、NNSC、1988

*wordchars*

パトリック・ウルフ、Kuck and Associates、Inc.、1988

_vi_モードのクリーンアップ

デイビッド・C・ローレンス、レンセラー工科大学、1989

  • オートリスト*とあいまいな補完リスト

アレックウォルマン、DEC、1989年

プロンプトの改行

マット・ランダウ、BBN、1989

〜/.tcshrc

レイ・ムーディ、パデュー物理学、1989

マジックスペースバーの履歴拡張

Mordechai ????、Intel、1989

printprompt()の修正と追加

本田和弘 慶應義塾大学コンピュータサイエンス学部、1989

自動スペル訂正および prompt3

Per Hedeland、Ellemtel、スウェーデン、1990-

さまざまなバグ修正、改善、および手動更新

ハンス・J アルバーツソン(サンスウェーデン)

*ampm* 、_ settc_および_telltc_

マイケル・ブルーム

割り込み処理の修正

マイケル・ファイン、Digital Equipment Corp

拡張キーサポート

エリックシュノベレン、凸、1990

凸のサポート、多くの_csh_バグ修正、ディレクトリスタックの保存と復元

ロン・フラックス、アップル、1990

A/UX 2.0(再)ポート

ダンオスカーソン、LTHスウェーデン、1990年

NLSサポートおよび非NLSサイトのシミュレートされたNLSサポート、修正

ヨハン・ワイドン、SICS、スウェーデン、1990

*shlvl* 、Machサポート、_correct-line_、8ビット印刷

マット・デイ、三洋アイコン、1990

POSIX termioのサポート、SysV制限の修正

Jaap Vermeulen、シーケント、1990-91

Viモードの修正、エキスパンドライン、ウィンドウ変更の修正、対称ポート

マーティン・ボイヤー、ハイドロケベック研究所、1991年

*autolist* ビープオプション、履歴検索を変更して、行頭からカーソルまでの文字列全体を検索します。

スコットクロッツ、モトローラ、1991年

Minixポート

David Dawes、シドニー大学 オーストラリア、物理学部、1991

SVR4ジョブ制御の修正

Jose Sousa、Interactive Systems Corp.、1991

拡張_vi_修正および_vi_ deleteコマンド

1991年、MITマーク・ホロヴィッツ

ANSIficationの修正、新しいexecハッシュコード、imakeの修正、where

ブルース・スターリング・ウッドコック、sterling @ netcom.com、1991-1995

ETAおよびPyramidポート、Makefileおよびlintの修正、* ignoreeof * = nの追加、およびその他のさまざまな移植性の変更とバグ修正

ジェフ・フィンク、1992

complete-word-fwd_および_complete-word-back

ハリー・C プーリー、1992

コヒーレントポート

アンディ・フィリップス、Mullard Space Science Lab U.K.、1992

VMS-POSIXポート

IBM Corp.のBeto Appleton、1992年

ウォーキングプロセスグループの修正、_csh_バグ修正、POSIXファイルテスト、POSIX SIGHUP

Scott Bolte、Cray Computer Corp.、1992

CSOSポート

カベ・R ガジ、ラトガース大学、1992

Tek、m88k、Titan、Masscompのポートと修正。 autoconfサポートを追加しました。

マーク・リンダーマン、コーネル大学、1992

OS/2ポート

Mika Liljeberg、liljeber @ kruuna.Helsinki.FI、1992

Linuxポート

ティム・P Starrin、NASA Langley Research Center Operations、1993

読み取り専用変数

Dave Schweisguth、イェール大学、1993-4

新しいmanページとtcsh.man2html

1993年、スタンフォード大学、ラリーシュヴィマー

AFSおよびHESIODパッチ

ルーク・ミューバーン、RMIT大学、1994-6

プロンプトでのディレクトリ印刷の強化、省略記号*および *rprompt が追加されました。

エドワード・ハッチンズ、シリコン・グラフィックス・インク、1996

暗黙のCDを追加しました。

マーティン・クレーマー、1997

Siemens Nixdorf EBCDICマシンに移植

Amol Deshpande、Microsoft、1997

WIN32に移植(Windows/95およびWindows/NT);不足しているすべてのライブラリとメッセージカタログコードを記述して、Windowsに接続しました。

多賀奈ゆた、1998

カラーlsの追加。

おかげで

ネット上のすべての人々、我慢し、バグを報告し、それぞれのバージョンへの新しい追加を提案します

リチャードM. Alderson III、「T in tcsh」セクションのリンクを作成してください:/unix_commands/index [previous] link:/unix_commands/index [next]リンク:/cgi-bin/printversion.cgi?tutorial = unix_commands&file = csh [Printer Friendly]

  
Advertisements