GoGPT Best VPN GoSearch

OnWorksファビコン

tcsh - クラウド上のオンライン

Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、またはMACOSオンラインエミュレーターを介してOnWorks無料ホスティングプロバイダーでtcshを実行します

これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのXNUMXつを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドtcshです。

プログラム:

NAME


tcsh-ファイル名の補完とコマンドライン編集を備えたCシェル

SYNOPSIS


tcsh [-bcdefFimnqstvVxX] [-名前[=値]] [引数 ...]
tcsh -l

DESCRIPTION


tcsh Berkeley UNIX Cシェルの拡張されたが完全に互換性のあるバージョンであり、
CSH(1)。 インタラクティブログインシェルとしても使用できるコマンド言語インタプリタです
シェルスクリプトコマンドプロセッサ。 コマンドラインエディタが含まれています(を参照) 当学校区の コマンド-
ライン エディタ)、プログラム可能な単語補完(を参照) 完成   リスト)、 つづり
修正(を参照) つづり 補正)、履歴メカニズム(を参照) 沿革 置換)、 仕事
制御(を参照) 求人)およびCのような構文。 NS NEW 商品特徴 セクションでは、メジャーについて説明します
の機能強化 tcshCSH(1)。 このマニュアル全体を通して、 tcsh に見つかりません
最も CSH(1)実装(具体的には、4.4BSD CSH)は `(+) 'でラベル付けされ、
に存在する機能 CSH(1)ただし、通常は文書化されていませんが、「(u)」というラベルが付いています。

引数 リスト 処理
シェルの最初の引数(引数0)が `-'の場合、それはログインシェルです。 ログイン
シェルは、シェルを呼び出して指定することもできます。 -l 唯一の引数としてフラグを立てます。

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

-b オプション処理からの「中断」を強制し、それ以降のシェル引数を
オプション以外の引数として扱われます。 残りの引数は次のように解釈されません
シェルオプション。 これは、混乱することなくシェルスクリプトにオプションを渡すために使用できます
または可能性のある巧妙さ。 これがないと、シェルはユーザーIDの設定スクリプトを実行しません。
オプションを選択します。

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

-d シェルはからディレクトリスタックをロードします 〜/ .cshdirs 以下に説明するように スタートアップ  
shutdown、ログインシェルであるかどうか。 (+)

-D[=]
環境変数を設定します 〜へ 。 (ドメイン/ OSのみ)(+)

-e 呼び出されたコマンドが異常終了した場合、またはゼロ以外の終了が発生した場合、シェルは終了します
状態。

-f シェルは、リソースやスタートアップファイルをロードしたり、コマンドハッシュを実行したりしません。
したがって、より速く開始します。

-F シェルは フォーク(2)の代わりに vフォーク(2)プロセスを生成します。 (+)

-i シェルはインタラクティブであり、トップレベルの入力を求めるプロンプトが表示されます。
ターミナルではありません。 シェルの入力と
出力は端子です。

-l シェルはログインシェルです。 次の場合にのみ適用可能 -l 指定された唯一のフラグです。

-m シェルがロードされます 〜/ .tcshrc 有効なユーザーに属していない場合でも。 新しい
のバージョン su(1)合格できる -m シェルに。 (+)

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

-q シェルはSIGQUITを受け入れます(参照 シグナル 取り扱い)およびそれが下で使用されるときに動作します
デバッガ。 ジョブ制御は無効になっています。 (u)

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

-t シェルは、XNUMX行の入力を読み取って実行します。 `\ 'を使用してエスケープすることができます
この行の終わりに改行を入れて、別の行に進みます。

-v 設定します 詳細 シェル変数。コマンド入力が履歴の後にエコーされるようにします
代用。

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

-V 設定します 詳細 実行前でもシェル変数 〜/ .tcshrc.

-X することです -x as -V にある -v.

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

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

フラグ引数の処理後、引数は残っているが、 -c, -i, -sまたは -t
オプションが指定された場合、最初の引数はコマンドのファイルの名前として使用されます。または
実行される「スクリプト」。 シェルはこのファイルを開き、可能な限りその名前を保存します
`$ 0 'による再置換。 多くのシステムが標準バージョン6またはバージョンのいずれかを使用しているため
シェルスクリプトがこのシェルと互換性がない7つのシェル、シェルはそのような
最初の文字が「#」ではないスクリプトを実行するための「標準」シェル。
コメントで始めないでください。

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

スタートアップ   shutdown
ログインシェルは、システムファイルからコマンドを実行することから始まります /etc/csh.cshrc  
/etc/csh.login。 次に、ユーザーのファイルからコマンドを実行します ホーム ディレクトリ:最初
〜/ .tcshrc (+)または、 〜/ .tcshrc 見つかりません、 〜/ .cshrcをタップし、その後、 〜/ .history (またはの値
  履歴ファイル シェル変数)、次に 〜/ .login、 そして最後に 〜/ .cshdirs (またはの値
ディレクトリファイル シェル変数)(+)。 シェルは読むかもしれません /etc/csh.login 後ではなく前
/etc/csh.cshrc, 〜/ .login 後ではなく前 〜/ .tcshrc or 〜/ .cshrc   〜/ .history,
そのようにコンパイルされた場合; を参照してください バージョン シェル変数。 (+)

非ログインシェルは読み取り専用 /etc/csh.cshrc   〜/ .tcshrc or 〜/ .cshrc 始めるとき。

スタートアップファイルの例については、お問い合わせください http://tcshrc.sourceforge.net.

次のようなコマンド スティ(1)と ツェット(1)は、ログインごとにXNUMX回だけ実行する必要があり、通常は
自分の 〜/ .login ファイル。 両方で同じファイルのセットを使用する必要があるユーザー CSH(1)と
tcsh しか持つことができません 〜/ .cshrc の存在をチェックします tcsh シェル変数
(qv)使用する前に tcsh-特定のコマンド、または両方を持つことができます 〜/ .cshrc フォルダーとその下に 〜/ .tcshrc
which sources(組み込みコマンドを参照) 〜/ .cshrc。 このマニュアルの残りの部分は
`〜/ .tcshrc'は `を意味します〜/ .tcshrc または、 〜/ .tcshrc 見つかりません、 〜/ .cshrc'.

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

空の行に「^ D」と入力するか、「logout」または「login」と入力するか、シェルを使用してログアウトできます。
自動ログアウトメカニズム( 自動ログアウト シェル変数)。 ログインシェルが終了したとき
それは設定します ログアウト シェル変数を必要に応じて「通常」または「自動」に変更し、実行します
ファイルからのコマンド /etc/csh.logout   〜/ .logout。 シェルはログアウト時にDTRをドロップする可能性があります
そのようにコンパイルされた場合; を参照してください バージョン シェル変数。

システムのログインファイルとログアウトファイルの名前は、システムごとに異なります。
異なるとの互換性 CSH(1)バリアント; 見る ファイル.

編集
最初に説明します 当学校区の コマンドライン エディタを選択します。 完成   リスト   つづり
補正 セクションでは、エディターとして実装されるXNUMXセットの機能について説明します
コマンドですが、それは独自の扱いに値します。 ついに、 エディター コマンド リストと
シェルに固有のエディタコマンドとそのデフォルトのバインディングについて説明します。

当学校区の コマンドライン エディタ (+)
コマンドライン入力は、GNUEmacsで使用されているものとよく似たキーシーケンスを使用して編集できます。
vi(1)。 エディターは、 edit シェル変数が設定されます。
インタラクティブシェルのデフォルト。 NS バインドキー ビルトインは、キーバインディングを表示および変更できます。
Emacsスタイルのキーバインディングがデフォルトで使用されます(シェルが別の方法でコンパイルされた場合を除く。を参照してください。
  バージョン シェル変数)、しかし バインドキー キーバインディングをに変更できます viスタイルのバインディング
大挙。

シェルは常に矢印キーをバインドします( タームキャップ 環境変数)から

ダウン ダウンヒストリー
up アップヒストリー
後方文字
転送文字

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

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

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

完成   リスト (+)
シェルは、固有の略語を指定すると、多くの場合、単語を完成させることができます。 の一部を入力します
単語(たとえば、 `ls / usr / lost ')を押し、Tabキーを押して実行します。 完全な単語 エディタ
指図。 シェルはファイル名 `/ usr / lost 'を` / usr / lost + found /'に完成させ、置き換えます
不完全な単語と入力バッファ内の完全な単語。 (ターミナル `/ 'に注意してください;
完了は、完了したディレクトリの最後に「/」を追加し、他のディレクトリの最後にスペースを追加します
完了した単語。入力を高速化し、正常に完了したことを視覚的に示します。
当学校区の adduffix これを防ぐために、シェル変数の設定を解除できます。)一致するものが見つからない場合(おそらく
`/ usr / lost + found 'は存在しません)、ターミナルのベルが鳴ります。 単語がすでにある場合
完了(おそらく、システムに「/ usr / lost」があるか、またはおそらくあなたも考えていました
はるか先にすべてを入力しました)そうでない場合は、末尾に「/」またはスペースが追加されます
もう着いている。

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

コマンドと変数はほとんど同じ方法で完了することができます。 たとえば、次のように入力します
`em [tab] 'は` em'を `emacs 'に完成させます エマックス システム上の唯一のコマンドでした
`em 'で始まります。 完了すると、の任意のディレクトリでコマンドを見つけることができます path または与えられた場合
フルパス名。 `echo $ ar [tab] 'と入力すると、他にない場合は` $ ar'から `$ argv 'になります。
変数は `ar 'で始まりました。

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

`^ D 'と入力して単語を実行することにより、いつでも単語の可能な補完を一覧表示できます。
削除文字またはリストまたは eof エディターコマンド。 シェルは、を使用して可能な完了を一覧表示します
  ls-F 組み込み(qv)で、プロンプトと未完了のコマンドラインを再出力します。次に例を示します。

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

Status 自動リスト シェル変数が設定されている場合、シェルは残りの選択肢を一覧表示します(存在する場合)
完了に失敗したときはいつでも:

>自動リストを設定する
> nm / usr / lib / libt [tab]
libtermcap.a @ libtermlib.a @
> nm / usr / lib / libterm

If 自動リスト が「あいまい」に設定されている場合、選択肢は完了に失敗して追加された場合にのみリストされます
完成した単語に新しい文字はありません。

完成させるファイル名には、変数、自分または他の人のホームディレクトリを含めることができます
`〜 'と省略されます(参照 ファイル名 置換)およびディレクトリスタックエントリの省略形
`= 'で(参照 ディレクトリ スタック 置換) 例えば、

> ls〜k [^ D]
カーンカスケロッグ
> ls〜ke [tab]
> ls〜kellogg /

or

>ローカルに設定= / usr / local
> ls $ lo [tab]
> ls $ local / [^ D]
bin / etc / lib / man / src /
> ls $ local /

変数は、を使用して明示的に展開することもできることに注意してください。 展開変数 エディタ


削除文字またはリストまたは eof 行の終わりにのみリストします。 行の途中でそれ
カーソルの下の文字を削除し、空の行でXNUMXつログアウトします。
無視する 設定され、何もしません。 `M- ^ D '、エディターコマンドにバインド リスト-選択肢、リスト
行のどこでも完了の可能性、そして リスト-選択肢 (または関連するもののいずれか
削除、一覧表示、ログアウトを行う、または行わないエディタコマンド。 削除-文字-または-
リストまたは eof)を使用して `^ D 'にバインドできます バインドキー 必要に応じて組み込みコマンド。

当学校区の 完全な単語順方向   完全なワードバック エディターコマンド(によってどのキーにもバインドされない
デフォルト)は、可能な完了のリストを上下に循環するために使用できます。
現在の単語をリスト内の次または前の単語に置き換えます。

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

> ls
Makefile condiments.h〜main.o side.c
READMEmain.c食事side.o
condiments.h main.c〜
> fignore =(。o \〜)を設定します
> emacs ma [^ D]
main.c main.c〜main.o
> emacs ma [tab]
> emacs main.c

`main.c〜 'と` main.o'は、で終わるため、完了によって無視されます(ただし、リストされません)。
の接尾辞 無視する。 `〜 'の前に` \'が必要であることに注意してください。
に拡張 ホーム 以下に説明するように ファイル名 置換. 無視する XNUMXつだけの場合は無視されます
完成可能です。

Status コンプリート シェル変数は `enhance 'に設定され、完了1)大文字と小文字を区別せず、2)
ピリオド、ハイフン、アンダースコア( `。 '、`-'、 `_ ')を単語の区切り文字と見なし、
ハイフンとアンダースコアは同等です。 次のファイルがある場合

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

「mail-fclc [tab]」と入力すると、「mail -f comp.lang.c」、および^ Dになります。
`comp.lang.c 'と` comp.lang.c ++'をリストします。 `mail -f c..c ++ [^ D] 'はリストされます
`comp.lang.c ++ 'および` comp.std.c ++'。 次のディレクトリで `rm a--file [^ D] 'と入力します

A_silly_filea-ハイフン付きファイルanother_silly_file

大文字と小文字は無視され、ハイフンとアンダースコアは無視されるため、XNUMXつのファイルすべてが一覧表示されます。
同等。 ただし、ピリオドはハイフンやアンダースコアと同等ではありません。

Status コンプリート シェル変数は `Enhance 'に設定され、完了は大文字と小文字を無視し、
ユーザーが次のように入力した場合にのみ、ハイフンとアンダースコアの単語区切り文字の違い
小文字またはハイフン。 大文字またはアンダースコアを入力すると、
対応する小文字またはハイフンの単語区切り文字と一致しません。 `rmと入力する
前の例のディレクトリにあるa--file [^ D] 'は、XNUMXつのファイルすべてをリストします。
ただし、「rm A--file」と入力すると、「A_silly_file」とのみ一致し、「rm a__file [^ D]」と入力すると一致します。
ユーザーが明示的に使用したため、 `A_silly_file 'と` another_silly_file'だけに一致します。
大文字またはアンダースコア文字。

完了とリストは、他のいくつかのシェル変数の影響を受けます。 正確 設定することができます
より多くのタイピングが結果として生じる可能性がある場合でも、可能な限り最短の一意の一致で完了する
より長い一致:

> ls
飼料foo食品foonly
>正確に設定する
> rm fo [tab]

`fo 'は` fod'または `foo 'に展開される可能性があるため、ビープ音だけが鳴りますが、別の` o'を入力すると、

> rm foo [tab]
> rm foo

`food 'と` foonly'も一致しますが、完了は `foo 'で完了します。 自動拡張
を実行するように設定できます 拡張履歴 各完了試行の前のエディターコマンド、
オートコレクト スペルに設定できます-完成する単語を修正します(を参照) つづり
補正)各完了試行の前に 正しい コマンドを完了するように設定できます
`return 'を押すと自動的に。 マッチビープ 完了ビープ音を鳴らすように設定できますまたは
さまざまな状況でビープ音を鳴らさず、 ビープ音なし ビープ音がまったく鳴らないように設定できます。 ノスタット
ディレクトリおよび/またはディレクトリに一致するパターンのリストに設定して、
からの完了メカニズム STAT(2)それらのディレクトリを作成します。 リストマックス   リスト最大行 することができます
質問せずにリストされるアイテムと行の数を(それぞれ)制限するように設定します
最初。 Recognition_only_executables シェルリストを実行可能ファイルのみにするように設定できます
コマンドを一覧表示しますが、かなり遅いです。

最後に、 コンプリート 組み込みコマンドを使用して、単語を完成させる方法をシェルに指示できます
ファイル名、コマンド、変数以外。 完了とリストはglobでは機能しません-
パターン(を参照) ファイル名 置換)、 しかし リストグロブ   エキスパンドグロブ エディターコマンド
glob-patternsに対して同等の機能を実行します。

つづり 補正 (+)
シェルは、ファイル名、コマンド、変数名のスペルを次のように修正できる場合があります。
それらを完成させてリストするだけでなく。

個々の単語は、 スペルワード エディタコマンド(通常は
MsとMSにバインドされています)と入力バッファ全体 スペルライン (通常はM- $にバインドされます)。
当学校区の 正しい シェル変数を `cmd 'に設定してコマンド名を修正するか、` all'をに設定して
returnが入力されるたびに行全体を修正し、 オートコレクト 修正するように設定できます
各完了試行の前に完了する単語。

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

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

「y」またはスペースに答えて修正された行を実行し、「e」に答えて修正されていない行を残すことができます
入力バッファ内のコマンド、 `^ C 'がヒットしたかのようにコマンドを中止するための` a'、および
元の行を変更せずに実行するその他のもの。

スペル修正は、ユーザー定義の補完を認識します( コンプリート ビルトイン
指図)。 補完が定義されている位置にある入力単語が
補完リストの単語、スペル修正はスペルミスを登録し、
訂正としての後者の単語。 ただし、入力単語がいずれにも一致しない場合
その位置の可能な補完、スペル修正は登録されません
スペルミス。

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

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

エディター コマンド (+)
`bindkey 'はキーバインディングを一覧表示し、` bindkey -l'はエディタコマンドを一覧表示して簡単に説明します。
ここでは、新しいまたは特に興味深いエディタコマンドについてのみ説明します。 見る エマックス(1)と
vi(1)各エディターのキーバインディングの説明。

各コマンドがデフォルトでバインドされているXNUMXつまたは複数の文字は、次のように指定されます。
括弧。 `^文字'は制御文字を意味し、 `M-文字'メタ文字、
エスケープとして入力-文字 メタキーのない端末。 ケースは重要ですが、
デフォルトでは文字にバインドされています。
利便性。

完全な単語 (タブ)
以下の説明に従って単語を完成させます 完成   リスト.

完全なワードバック (バインドされていません)
いいね 完全な単語順方向、ただし、リストの最後からステップアップします。

完全な単語順方向 (バインドされていません)
現在の単語を、可能な補完のリストの最初の単語に置き換えます。
リストをステップダウンするために繰り返すことができます。 リストの最後で、ビープ音と
不完全な単語に戻ります。

完全な単語-生 (^ Xタブ)
いいね 完全な単語、ただし、ユーザー定義の補完は無視されます。

コピー前の単語 (M- ^ _)
現在の行の前の単語を入力バッファにコピーします。 も参照してください
挿入-最後の単語.

dabbrev-展開 (NS-/)
現在の単語を、現在の単語が
必要に応じて履歴リストを(XNUMX回)折り返す先頭の部分文字列。
繰り返す dabbrev-展開 次への入力変更を介在させることなく
前の単語など、同じ一致をスキップする 履歴-検索-後方
ありません。

削除文字 (標準を使用している場合は「Del」にバインドされます /etc/csh.cshrc)
カーソルの下の文字を削除します。 も参照してください 削除文字またはリストまたは eof.

削除文字または eof (バインドされていません)
削除文字 カーソルの下に文字がある場合または ファイルの終わり 〜に
空の行。 も参照してください 削除文字またはリストまたは eof.

削除文字またはリスト (バインドされていません)
削除文字 カーソルの下に文字がある場合または リスト-選択肢
行の終わり。 も参照してください 削除文字またはリストまたは eof.

削除文字またはリストまたは eof (^ D)
削除文字 カーソルの下に文字がある場合、 リスト-選択肢 最後に
行のまたは ファイルの終わり 空の行に。 それぞれのXNUMXつのコマンドも参照してください
そのうちのXNUMXつのアクションのみを実行し、 削除文字または eof, 削除文字またはリスト
  リストまたは eof、それぞれがXNUMXつのうちXNUMXつを実行します。

ダウンヒストリー (下矢印、^ N)
いいね アップヒストリー、ただし、元の入力行で停止して、ステップダウンします。

ファイルの終わり (バインドされていません)
ファイルの終わりを通知し、シェルを終了させます。 無視する shell
これを防ぐために変数(qv)が設定されています。 も参照してください 削除文字またはリストまたは eof.

拡張履歴 (Mスペース)
現在のワードの履歴置換を展開します。 見る 沿革 置換。 見る
また 魔法の空間, トグル-リテラル-履歴自動拡張 シェル変数。

エキスパンドグロブ (^ X- *)
カーソルの左側にあるglob-patternを展開します。 見る ファイル名 置換.

エキスパンドライン (バインドされていません)
いいね 拡張履歴、ただし、入力の各単語の履歴置換を展開します
バッファ。

展開変数 (^ X- $)
変数をカーソルの左側に展開します。 見る 変数 置換.

履歴-検索-後方 (Mp、MP)
履歴リストを逆方向に検索して、
カーソルまでの入力バッファの現在の内容を入力にコピーします
バッファ。 検索文字列はグロブパターンの場合があります(「 ファイル名 置換)
`* '、`?'、 `[] 'または` {}'を含みます。 アップヒストリー   ダウンヒストリー から続行します
履歴リストの適切なポイント。 Emacsモードのみ。 も参照してください 歴史-
検索フォワード   i-検索-戻る.

履歴-検索-転送 (Mn、MN)
いいね 履歴-検索-後方、ただし、前方に検索します。

i-検索-戻る (バインドされていません)
次のように逆方向に検索します 履歴-検索-後方、最初の一致をにコピーします
パターンの最後にカーソルを置いた入力バッファとプロンプト
`bck: 'と最初の一致で。 追加の文字を入力して拡張できます
検索、 i-検索-戻る 同じもので検索を続けるために入力することができます
パターン、必要に応じて履歴リストを折り返す、(i-検索-戻る
これが機能するために単一の文字にバインドされている)または次の特別なもののいずれか
文字を入力できます:

^ Wカーソルの下の残りの単語を検索パターンに追加します。
削除(またはにバインドされた任意の文字 後方削除文字)
最後に入力した文字の効果を元に戻し、文字を削除します
必要に応じて、検索パターンから。
^ G前の検索が成功した場合、検索全体を中止します。 もしも
そうではなく、最後に成功した検索に戻ります。
エスケープ検索を終了し、現在の行を入力バッファーに残します。

にバインドされていない他の文字 自己挿入コマンド 検索を終了し、
現在の行を入力バッファに残し、通常と解釈されます
入力。 特に、キャリッジリターンにより、現在の行が実行されます。
Emacsモードのみ。 も参照してください i-検索-転送   履歴-検索-後方.

i-検索-転送 (バインドされていません)
いいね i-検索-戻る、ただし、前方に検索します。

挿入-最後の単語 (NS-_)
前の入力行の最後の単語( `!$ ')を入力バッファに挿入します。
参照 コピー前の単語.

リスト-選択肢 (M- ^ D)
以下で説明するように完了の可能性を一覧表示します 完成   リスト。 見る
また 削除文字またはリストまたは eof   リスト-選択肢-生.

リスト-選択肢-生 (^ X- ^ D)
いいね リスト-選択肢、ただし、ユーザー定義の補完は無視されます。

リストグロブ (^ Xg、^ XG)
リスト(経由 ls-F 組み込み)はglob-patternに一致します(を参照) ファイル名
置換)カーソルの左側。

リストまたは eof (バインドされていません)
リスト-選択肢 or ファイルの終わり 空の行に。 も参照してください 削除文字またはリスト
または-eof.

魔法の空間 (バインドされていません)
次のように、現在の行の履歴置換を展開します 拡張履歴,
スペースを挿入します。 魔法の空間 スペースバーにバインドするように設計されていますが、
デフォルトでバインドされます。

正規化コマンド (^ X-?)
PATHで現在の単語を検索し、見つかった場合は、
実行可能ファイルへのフルパス。 特殊文字が引用されています。 エイリアスが展開されます
引用符で囲まれていますが、エイリアス内のコマンドはそうではありません。 このコマンドは、
コマンドを引数として取るコマンド(例: `dbx 'および` sh -x')。

正規化パス (^ Xn、^ XN)
の「展開」設定で説明されているように、現在の単語を展開します。 シンボリックリンク
シェル変数。

上書きモード (バインドされていない)
入力モードと上書きモードを切り替えます。

実行-fg-エディター (M- ^ Z)
現在の入力行を保存し、次の名前の停止したジョブを探します。
のファイル名部分の最後のコンポーネント 環境変数EDITOR or ビジュアル 環境
変数、またはどちらも設定されていない場合は、 `ed 'または` vi'。 そのような仕事が見つかった場合、それは
`fg%のように再起動ジョブ'と入力されていました。 これは、前後に切り替えるために使用されます
エディターとシェルの間で簡単に。 このコマンドを `^ Z 'にバインドする人もいます。
彼らはこれをさらに簡単に行うことができます。

実行ヘルプ (Mh、MH)
同じ概念を使用して、現在のコマンドに関するドキュメントを検索します
完了ルーチンとしての `current command '、およびそれを出力します。 する方法はありません
ポケットベルを使用します。 実行ヘルプ 短いヘルプファイル用に設計されています。 特別なエイリアスの場合
ヘルプコマンド が定義されている場合は、コマンド名を唯一の引数として実行されます。 そうしないと、
ドキュメントは、という名前のファイルに含める必要があります command。ヘルプ、 command.1、 command.6、
command.8または command、にリストされているディレクトリのXNUMXつにある必要があります
HPATH 環境変数。 ヘルプファイルが複数ある場合は、最初のファイルのみが
印刷されます。

自己挿入コマンド (テキスト文字)
挿入モード(デフォルト)では、入力された文字を入力行に挿入します
カーソルの下の文字の後。 上書きモードでは、文字を置き換えます
入力した文字がカーソルの下にあります。 通常、入力モードは保持されます
行間ですが、 入力モード シェル変数は `挿入 'または
「上書き」して、各行の先頭でエディターをそのモードにします。 見る
また 上書きモード.

シーケンスリードイン (矢印プレフィックス、メタプレフィックス、^ X)
次の文字がマルチキーシーケンスの一部であることを示します。 バインディング
マルチキーシーケンスへのコマンドは、実際にはXNUMXつのバインディングを作成します。最初の文字
〜へ シーケンスリードイン コマンドのシーケンス全体。 すべてのシーケンス
にバインドされた文字で始まる シーケンスリードイン 効果的にバインドされています
未定義のキー 別のコマンドにバインドされていない限り。

スペルライン (M- $)
入力バッファ内の各単語のスペルを修正しようとします。 スペル-
単語、ただし、最初の文字が「-」、「!」、「^」、「%」のいずれかである単語は無視されます。
スイッチ、置換、および
など。 見る つづり 補正.

スペルワード (さん、MS)
以下で説明するように、現在の単語のスペルを修正しようとします つづり
補正。 パス名のように見える単語の各コンポーネントをチェックします。

トグル-リテラル-履歴 (氏、MR)
入力バッファ内の履歴置換を展開または「展開解除」します。 も参照してください
拡張履歴自動拡張 シェル変数。

未定義のキー (バインドされていないキー)
ビープ音。

アップヒストリー (上矢印、^ P)
履歴リストの前のエントリを入力バッファにコピーします。 もしも 履歴書
が設定され、エントリのリテラル形式を使用します。 ステップアップするために繰り返すことができます
履歴リスト、一番上で停止します。

vi-検索-戻る (?)
`? 'でプロンプトを表示します検索文字列の場合(グロブパターンの場合もあります)
履歴-検索-後方)、それを検索し、入力バッファにコピーします。
一致するものが見つからない場合、ベルが鳴ります。 returnを押すと、検索が終了して終了します
入力バッファの最後の一致。 エスケープを押すと検索が終了し、実行されます
試合。 vi モードのみ。

vi-検索-fwd (/)
いいね vi-検索-戻る、ただし、前方に検索します。

which-コマンド (NS-?)
ありません which (組み込みコマンドの説明を参照)の最初の単語
入力バッファ。

ヤンクポップ (私の)
直後に実行した場合 ヤンク または別の ヤンクポップ、ヤンクを置き換えます
キリングリングからの次の前の文字列を含む文字列。 これも効果があります
このストリングが最も多くと見なされるように、キリングリングを回転させます
最近後で殺された ヤンク 指図。 繰り返し ヤンクポップ を循環します
何度でも殺します。

語彙 構造
シェルは、入力行を空白とタブで単語に分割します。 特殊文字 `& '、
`| '、`;'、 `<'、`>'、 `( '、および`)'とXNUMX倍の文字 `&& '、` ||'、 `<< '、および` >>'は
空白で囲まれているかどうかに関係なく、常に単語を区切ります。

シェルの入力が端末でない場合、コメントを開始するために文字「#」が使用されます。
各 `# 'とそれが表示される残りの入力行は、先に進む前に破棄されます
解析中。

特殊文字(空白またはタブを含む)は、その特殊文字を持つことができない場合があります
意味し、場合によっては別の単語の一部になります。その前に円記号( `\ ')または
一重引用符( `'')、二重引用符(` "')、または逆引用符(` `')で囲みます。
`\ 'が前に付いた改行を引用符で囲むことは空白と同等ですが、引用符の中にはこれがあります
シーケンスは改行になります。

さらに、すべて 置換 (以下を参照) 沿革 置換 によって防ぐことができます
文字列(または文字列の一部)を一重引用符で囲むか、
重要な文字を引用する(例:「$」または「」 変数 置換 or Command
置換 それぞれ) `\ 'で。 ((エイリアス 置換 例外ではありません:任意の引用
単語の任意の文字 alias の置換を防ぐために定義されています
エイリアス。 エイリアスを引用する通常の方法は、その前に円記号を付けることです。) 沿革
置換 バックスラッシュで防止されますが、一重引用符では防止されません。 で引用された文字列
二重引用符または逆引用符は 変数 置換   Command 置換、 だけど
他の置換は防止されます。

一重引用符または二重引用符で囲まれたテキストは、XNUMXつの単語(またはXNUMXつの単語の一部)になります。
空白やタブを含むこれらの文字列のメタ文字は、個別の単語を形成しません。
XNUMXつの特別な場合のみ(を参照) Command 置換 以下)二重引用符で囲まれた文字列は
複数の単語の一部。 一重引用符で囲まれた文字列は決して機能しません。 逆引用符は特別です:
彼らは合図します Command 置換 (qv)、これは複数の単語になる可能性があります。

複雑な文字列、特にそれ自体に引用文字が含まれている文字列を引用する
混乱する可能性があります。 引用符は人間の文章のように使用する必要がないことを忘れないでください! それ
文字列全体ではなく、文字列の必要な部分だけを引用する方が簡単な場合があります
必要に応じて、さまざまな種類の引用を使用して引用します。

当学校区の バックスラッシュ引用符 シェル変数(qv)は、円記号が常に `\ 'を引用するように設定できます。
`''、および` "'。(+)これにより、複雑な引用タスクが簡単になる場合がありますが、構文が発生する可能性があります。
のエラー CSH(1)スクリプト。

置換
ここで、シェルが入力に対して実行するさまざまな変換を順番に説明します。
それらが発生する場所。 関連するデータ構造とコマンドを渡す際に注意し、
それらに影響を与える変数。 引用することで置換を防ぐことができることを忘れないでください
以下に説明 語彙 構造.

沿革 置換
端末から入力された各コマンドまたは「イベント」は、履歴リストに保存されます。 NS
前のコマンドは常に保存され、 歴史 シェル変数は、次の数値に設定できます
その数のコマンドを保存します。 NS 履歴アップ シェル変数は、重複を保存しないように設定できます
イベントまたは連続する重複イベント。

保存されたコマンドには1から順番に番号が付けられ、時刻がスタンプされます。 そうではない
通常、イベント番号を使用するために必要ですが、現在のイベント番号を一部にすることができます
`! 'を配置することによるプロンプトの中に プロンプト シェル変数。

シェルは実際には、履歴を拡張およびリテラル(非拡張)形式で保存します。 の場合
履歴書 シェル変数が設定され、履歴を表示および保存するコマンドはリテラルを使用します
フォーム。

当学校区の 歴史 組み込みコマンドは、印刷、ファイルへの保存、履歴リストの復元とクリアを行うことができます
いつでも、そして セーブヒスト   履歴ファイル シェル変数は、履歴を保存するように設定できます
ログアウト時に自動的にリストし、ログイン時に復元します。

履歴置換は、履歴リストから入力ストリームに単語を導入し、
コマンドを繰り返したり、現在のコマンドで前のコマンドの引数を繰り返したりするのは簡単です。
または、前のコマンドのスペルミスを修正します。入力はほとんどなく、高度な入力が必要です。
信頼。

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

履歴の置換には「イベント仕様」が含まれる場合があります。これは、
どの単語を使用するか、「単語指定子」から特定の単語を選択します
選択されたイベント、および/または選択された単語を操作する「修飾子」。

イベントの仕様は次のようになります

n 特定のイベントを参照する番号
-n イベントを参照するオフセット n 現在のイベントの前
#現在のイベント。 これは慎重に使用する必要があります CSH(1)、ない場合
再帰を確認してください。 tcsh 10レベルの再帰を許可します。 (+)
! 前のイベント( `-1 'に相当)
s 最初の単語が文字列で始まる最新のイベント s
?s? 文字列を含む最新のイベント s。 XNUMX番目の `? ' することができます
直後に改行が続く場合は省略されます。

たとえば、誰かの履歴リストの次のビットについて考えてみます。

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 差分 wumpus.man.old wumpus.man

コマンドは、イベント番号とタイムスタンプとともに表示されます。 現在のイベント、
まだ入力していません。イベント13です。`!11 'と `!-2'はイベント11を指します。`!! ' を指します
前のイベント、12。 `!! ' `! 'と省略できますその後に `: 'が続く場合(`:'は
以下で説明します)。 `!n 'は、` n'で始まるイベント9を指します。 「!?古い?」 も参照します
「古い」を含むイベント12。 単語指定子または修飾子なし履歴参照
イベント全体に展開するだけなので、 `!cp 'と入力して、コピーコマンドをやり直すか、
`diff '出力が画面の上部からスクロールアウトした場合は` !! | more'。

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

(+) CSH(1)たとえば、「!3d」をイベント3に展開し、「d」の文字を追加します。
それ、 tcsh `3d 'で始まる最後のイベントに展開します。 完全に数値のみ
引数はイベント番号として扱われます。 これにより、最初のイベントを思い出すことができます
数字で。 `!3d 'を展開するには CSH(1) `!{3} d 'と言います。

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

0最初の(コマンド)ワード
n 当学校区の n引数
^ `1 'に相当する最初の引数
$最後の引数
%?が一致する単語s? 探す
xy 言葉の範囲
-y に相当 `0-y '
* `^-$ 'と同等ですが、イベントに1語しか含まれていない場合は何も返しません
x* に相当 `x- $ '
x- に相当 `x * '、ただし最後の単語を省略( `$ ')

選択した単語は、単一の空白で区切られてコマンドラインに挿入されます。 にとって
たとえば、前の例の「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'の最初のXNUMXつの単語を再利用します
`nroff -man hurkle.man 'と言うコマンド。

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

履歴参照には単語指定子が含まれている場合がありますが、イベント指定はありません。 それから
前のコマンドを参照します。 「diff」の例を続けると、簡単に言うことができます
`diff!^。old!^ 'または、逆の順序で引数を取得するには、` diff!*'だけです。

履歴参照内のXNUMXつまたは複数の単語は、それに従うことで編集または「変更」できます
XNUMXつ以上の修飾子があり、それぞれの前に `: 'が付いています。

h先頭を残して、末尾のパス名コンポーネントを削除します。
t末尾を残して、すべての先頭のパス名コンポーネントを削除します。
rファイル名拡張子 `.xxx 'を削除し、ルート名を残します。
e拡張機能を除くすべてを削除します。
u最初の小文字を大文字にします。
l最初の大文字を小文字にします。
s/ l / r / 代替 lr. l のような単純な文字列です r、正規表現ではありません
名を冠した ed(1)コマンド。 の区切り文字として任意の文字を使用できます
`/ 'の場所; `\ 'を使用して、内部の区切り文字を引用できます l   rを選択します。
の文字 `& ' r の代わりに l; `\ 'は`&'も引用します。 もしも l 空です
( `` '')、 l 以前の置換または s 以前の検索からまたは
イベント仕様のイベント番号が使用されます。 末尾の区切り文字は
直後に改行が続く場合は省略されます。
&前の置換を繰り返します。
g次の修飾子を各単語にXNUMX回適用します。
a(+)次の修飾子をXNUMXつの単語にできるだけ多く適用します。 `a '
および `g 'を一緒に使用して、修飾子をグローバルに適用できます。 `s 'で
修飾子、元の単語に含まれるパターンのみが置換されます、
置換結果を含むパターンではありません。
p新しいコマンドラインを印刷しますが、実行しないでください。
q置換された単語を引用し、それ以上の置換を防ぎます。
x qと同様ですが、空白、タブ、改行で単語に分割します。

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

たとえば、 `diff 'コマンドは` diff wumpus.man.old!#^:r'と記述されている可能性があります。
`:r 'を使用して、同じ行の最初の引数(`!#^')から `.old 'を削除します。 我々は出来た
「echohelloout there」と言ってから、「echo!*:u」で「hello」を大文字にし、「echo!*:au」で言います。
大声で、または「echo!*:agu」で本当に叫びます。 「mail-s」をフォローするかもしれません
パスワード "rot 'と`!:s / rot / root'を使用して、 `root 'のスペルを修正します(ただし、を参照してください)。 つづり
補正 別のアプローチの場合)。

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

(+)で CSH そのため、各履歴または変数に適用できる修飾子はXNUMXつだけです。
拡張。 の tcsh、たとえば、複数を使用できます

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

In CSH、結果は `wumpus.1:r 'になります。 コロンが続く置換はする必要があるかもしれません
中かっこでそれから絶縁されている:

> mv a.out / usr / games / wumpus
> setenv PATH!$:h:$ PATH
悪い ! 修飾子:$。
> setenv PATH!{-2 $:h}:$ PATH
setenv パス / usr / games:/ binに:/ usr / bin:.

最初の試みは成功するでしょう CSH しかし失敗する tcsh、理由 tcsh 別のものを期待します
`$ 'ではなくXNUMX番目のコロンの後の修飾子。

最後に、履歴には、エディターおよび置換を介してアクセスできます
今説明した。 NS アップ-   ダウンヒストリー, 履歴-検索-後方   -前方, 私は検索します-
バック   -前進, vi-検索-戻る   -前進, コピー前の単語   挿入-最後の単語 エディタ
コマンドは履歴リストでイベントを検索し、それらを入力バッファーにコピーします。 NS
トグル-リテラル-履歴 エディターコマンドは、拡張形式とリテラル形式を切り替えます。
入力バッファの履歴行。 拡張履歴   エキスパンドライン 歴史を広げる
現在の単語と入力バッファ全体のそれぞれの置換。

エイリアス 置換
シェルは、によって設定、設定解除、および印刷できるエイリアスのリストを維持します。 alias  
エイリアス コマンド。 コマンドラインが単純なコマンドに解析された後(を参照) コマンド
各コマンドの最初の単語(左から右)は、エイリアスがあるかどうかを確認するためにチェックされます。 もしそうなら、
最初の単語はエイリアスに置き換えられます。 エイリアスに履歴参照が含まれている場合は、
被災者 沿革 置換 (qv)元のコマンドが前のものであるかのように
入力行。 エイリアスに履歴参照が含まれていない場合、引数リストは残されます
手つかず。

したがって、 `ls 'のエイリアスが` ls -l'の場合、コマンド `ls / usr'は `ls-lになります / usr',
ここの引数リストは邪魔されていません。 `lookup 'のエイリアスが` grep!^の場合
/etc/passwd'そして `lookupbill'は` grepbillになります /etc/passwd'。 エイリアスを使用できます
パーサーメタ構文を導入します。 たとえば、 `alias print'pr \!* | lpr ''は
``コマンド ''( `print ') pr(1)ラインプリンタへの引数。

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

一部のエイリアスはシェルによって参照されます。 見る Special エイリアス.

変数 置換
シェルは変数のリストを維持し、各変数は値としてXNUMX個以上のリストを持っています
言葉。 シェル変数の値は、次のコマンドで表示および変更できます。 セッションに   unset
コマンド。 システムは、独自の「環境」変数のリストを維持します。 これらはすることができます
表示および変更 printenv, 設定環境   設定解除.

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

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

他の操作は変数を数値で扱います。 `@ 'コマンドは数値を許可します
実行される計算と変数に割り当てられた結果。 変数値は、
ただし、常に(XNUMX個以上の)文字列として表されます。 数値の目的のために
操作では、ヌル文字列はゼロと見なされ、XNUMX番目以降の単語はゼロと見なされます
マルチワード値の数は無視されます。

入力行がエイリアス化および解析された後、各コマンドが実行される前に、変数
置換は `$ '文字をキーにして実行されます。 この拡大は次の方法で防ぐことができます
`$ 'の前に` \'を付けます。 常に 発生し、 `'' s内
それはどこで 決して 発生します。 `` 'で引用された文字列は後で解釈されます(を参照) Command
置換 以下)したがって、「$」置換は、仮にあったとしても、後で実行されるまで発生しません。 NS
`$ 'の後に空白、タブ、または行末が続く場合、変更されずに渡されます。

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

`" 'で囲まれるか、 `:q'修飾子が指定されていない限り、変数置換の結果は次のようになります。
最終的にはコマンドとファイル名に置き換えられます。 `" '内で、その値が
複数の単語で構成され、(の一部の)単一の単語に展開されます。
空白で区切られた変数の値。 `:q '修飾子が置換に適用される場合
変数は複数の単語に展開され、各単語は空白で区切られ、引用符で囲まれます
後のコマンドまたはファイル名の置換を防ぐため。

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

$
${}変数の値の単語を置き換えます 、それぞれを空白で区切ります。
ブレースは断熱します そうでなければ一部である次の文字から
それ。 シェル変数の名前は、文字と数字で始まります。
手紙。 アンダースコア文字は文字と見なされます。 もしも シェルではありません
変数ですが、環境で設定されている場合、その値が返されます(ただし、
この場合、以下に示す他のフォームは使用できません)。
$[セレクタ]
${[セレクタ]}
の値から選択した単語のみを置き換えます を選択します。 セレクタ is
`$ '置換の対象であり、単一の数値またはXNUMXつの数値で構成されている場合があります
`-'で区切られます。 変数の値の最初の単語には「1」の番号が付けられます。 の場合
範囲の最初の数字は省略され、デフォルトでは「1」になります。 の最後のメンバーの場合
範囲は省略され、デフォルトは `$#'。 の セレクタ `* 'はすべての単語を選択します。 それ
XNUMX番目の引数が省略されている場合、または

$ 0コマンド入力が読み取られているファイルの名前を置き換えます。 エラー
名前がわからない場合に発生します。
$
${}
`$ argv [と同等] '。
$ * `$ argv 'と同等で、これは` $ argv [*]'と同等です。

以下で説明する `: '修飾子 沿革 置換、 `:p 'を除いて、に適用できます
上記の置換。 複数使用できます。 (+)絶縁するために中かっこが必要な場合があります
と同じように、リテラルコロンからの変数置換 沿革 置換 (qv); どれか
修飾子は中括弧内に表示する必要があります。

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

$?
$ {?}
文字列 `1 'を次の場合に置き換えます が設定され、そうでない場合は「0」に設定されます。
$?0現在の入力ファイル名がわかっている場合は「1」に置き換え、不明な場合は「0」に置き換えます。 いつも
インタラクティブシェルでは「0」。
$#
$ {#}
の単語数を代入します .
$# `$#argv 'と同等です。 (+)
$%
$ {%}
の文字数を代入します 。 (+)
$%
$ {%}
$ argv [の文字数を置き換えます]。 (+)
$? `$ status 'と同等です。 (+)
$$(親)シェルの(XNUMX進数の)プロセス番号を置き換えます。
$! によって開始された最後のバックグラウンドプロセスの(XNUMX進数の)プロセス番号を置き換えます
このシェル。 (+)
$ _最後に実行されたコマンドのコマンドラインを置き換えます。 (+)
$ <標準入力の行を置き換え、それ以上の解釈はありません
その後。 シェルスクリプトでキーボードから読み取るために使用できます。 (+)
一方、 CSH `$ <:q 'と同等であるかのように、常に$ <を引用します。 tcsh ではない。
さらに、 tcsh 行が入力されるのを待っていますユーザーは入力できます
行が置換されるシーケンスを中断するために割り込みますが、
CSH これは許可されていません。

エディターコマンド 展開変数、通常は `^ X- $ 'にバインドされ、次の目的で使用できます
個々の変数をインタラクティブに展開します。

コマンド、 ファイル名   ディレクトリにジョブを開始します。 スタック 置換
残りの置換は、組み込みコマンドの引数に選択的に適用されます。
これは、評価されない式の部分がこれらの影響を受けないことを意味します
拡張。 シェルの内部にないコマンドの場合、コマンド名は次のようになります。
引数リストとは別に置き換えられます。 これは、入出力後、非常に遅く発生します
リダイレクトが実行され、メインシェルの子になります。

Command 置換
コマンド置換は、「」で囲まれたコマンドで示されます。 そのようなからの出力
コマンドは空白、タブ、改行で別々の単語に分割され、nullの単語は
廃棄されました。 出力は可変であり、コマンドが置換され、
元の文字列。

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

デフォルトでは、バージョン6.12以降のシェルがすべての改行とキャリッジリターンを置き換えます
コマンド内の文字をスペースで囲みます。 設定を解除してこれをオフにした場合 csubstnonl,
改行は通常どおりコマンドを区切ります。

ファイル名 置換
単語に「*」、「?」、「[」、「{」のいずれかの文字が含まれている場合、またはその文字で始まる場合
「〜」はファイル名置換の候補であり、「グロブ」とも呼ばれます。 この言葉は
次にパターン(「グロブパターン」)と見なされ、アルファベット順に並べ替えられます
パターンに一致するファイル名のリスト。

一致するファイル名では、文字「。」 ファイル名の先頭またはすぐに
`/ 'に続く文字、および文字` /'は、明示的に一致する必要があります(
グロブドット or グロブスター または両方が設定されます(+))。 文字 `* 'は、
null文字列を含む文字。 文字 `? ' 任意のXNUMX文字に一致します。
シーケンス `[...] 'は、囲まれた文字のいずれかに一致します。 `[...] '内で、ペア
`-'で区切られた文字の数は、XNUMXつの間の字句的に任意の文字と一致します。

(+)一部のグロブパターンは無効にできます:シーケンス `[^ ...] 'は任意のXNUMX文字に一致します
中括弧内の文字および/または文字の範囲によって指定されます。

glob-pattern全体を `^ 'で否定することもできます。

>エコー*
バンクラッシュクランチ痛い
>エコー^ cr *
バン痛

`? '、` *'、または `[] 'を使用しない、または` {}'または `〜 '(下記)を使用するグロブパターンは、
正しく否定されました。

メタ表記 `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'に展開される場合があります。 (ノート
その `memo 'は` * box'と一致した結果でソートされませんでした。)次の場合はエラーではありません。
この構成は存在しないファイルに展開されますが、エラーが発生する可能性があります
展開されたリストが渡されるコマンドから。 この構成はネストできます。 として
特別な場合、単語 `{'、`}'および `{} 'は邪魔されずに渡されます。

ファイル名の先頭にある文字「〜」は、ホームディレクトリを示します。 立っている
単独で、つまり `〜 'は、の値に反映されるように、呼び出し元のホームディレクトリに展開されます。
  ホーム シェル変数。 文字、数字、および「-」で構成される名前が後に続く場合
シェルがその名前のユーザーを検索し、ホームを置き換える文字
ディレクトリ; したがって、 `〜ken 'は` / usr / ken'に展開され、 `〜ken / chmach 'は` / usr / ken / chmach'に展開される可能性があります。
文字 `〜 'の後に文字または` /'以外の文字が続く場合、または
単語の先頭以外の場所では、邪魔されないままになります。 `setenvのようなコマンド
MANPATH / usr / man:/ usr / local / man:〜/ lib / man'したがって、ホームディレクトリは実行されません
希望するかもしれない代用。

`^ 'の有無にかかわらず、` *'、 `? '、` ['、または `〜 'を含むグロブパターンのエラーです。
どのファイルとも一致しません。 ただし、glob-patternsのリスト内のXNUMXつのパターンのみが一致する必要があります
ファイル(たとえば、 `rm * .a * .c * .o 'は、ファイルがない場合にのみ失敗します。
`.a '、` .c'、または `.o 'で終わる現在のディレクトリ) 不一致 シェル変数は
何にも一致しないパターン(またはパターンのリスト)を設定するのではなく、変更せずに残します
エラーが発生します。

当学校区の グロブスター シェル変数は、「**」または「***」をファイルグロブパターンとして許可するように設定できます。
`/ 'を含む任意の文字列に一致し、既存のサブを再帰的にトラバースします。
ディレクトリ。 たとえば、 `ls ** .c 'は、現在のディレクトリにあるすべての.cファイルを一覧表示します。
木。 単独で使用する場合は、XNUMX個以上のサブディレクトリに一致します(例: `ls
/ usr / include /** / time.h 'は、 `time.h'という名前のファイルをリストします。 / usr / include ディレクトリにジョブを開始します。
木; `ls / usr / include /** time.h 'は、 / usr / include ディレクトリツリー
`time.h 'で終わる; および `ls / usr / include /** time **。h 'は、 `time'を持つ任意の.hファイルと一致します
サブディレクトリ名またはファイル名自体のいずれか)。 の問題を防ぐために
再帰の場合、 `** 'glob-patternは、を含むシンボリックリンクに下降しません。
ディレクトリ。 これをオーバーライドするには、 `*** '(+)を使用します

当学校区の ノグロブ シェル変数を設定して、ファイル名の置換を防ぐことができます。 エキスパンドグロブ
通常は `^ X- * 'にバインドされているエディタコマンドを使用して、個人をインタラクティブに展開できます
ファイル名の置換。

ディレクトリ スタック 置換 (+)
ディレクトリスタックは、ゼロから番号が付けられたディレクトリのリストであり、 pushdは, popdを
  Dirs 組み込みコマンド(qv)。 Dirs 印刷、ファイルへの保存、復元、クリアができます
いつでもディレクトリスタック、および セーバー   ディレクトリファイル シェル変数は次のように設定できます
ログアウト時にディレクトリスタックを自動的に保存し、ログイン時に復元します。 NS ディレクトリスタック
シェル変数を調べてディレクトリスタックを確認し、任意に配置するように設定できます
ディレクトリをディレクトリスタックに入れます。

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

> dirs -v
0 / usr / bin
1 / usr / spool / uucp
2 / usr / accts / sys
>エコー= 1
/ usr / spool / uucp
>エコー= 0 /カレンダー
/ usr / bin / calendar
>エコー=-
/ usr / accts / sys

当学校区の ノグロブ   不一致 シェル変数と エキスパンドグロブ エディタコマンドはに適用されます
ディレクトリスタックとファイル名の置換。

その他 置換 (+)
ファイル名に関連する変換は他にもいくつかありますが、厳密には
上記ですが、完全を期すためにここで言及しました。 任意 ファイル名はフルパスに展開できます
シンボリックリンク 変数(qv)は `expand 'に設定されます。 引用はこの拡大を防ぎます、
正規化パス エディターコマンドはオンデマンドでそれを行います。 NS 正規化コマンド エディタ
commandは、PATH内のコマンドをオンデマンドでフルパスに展開します。 ついに、 cd   pushdは
`-'を古い作業ディレクトリ(シェル変数と同等)として解釈します 所有)。 この
はまったく置換ではありませんが、これらのコマンドによってのみ認識される略語です。
それにもかかわらず、それも引用することによって防ぐことができます。

コマンド
次のXNUMXつのセクションでは、シェルがコマンドを実行し、コマンドを処理する方法について説明します。
入出力。

簡単な拡張で コマンド、 パイプライン   シーケンス
単純なコマンドは一連の単語であり、最初のコマンドは次のコマンドを指定します
実行されました。 `| 'で結合された一連の単純なコマンド文字はパイプラインを形成します。 NS
パイプラインの各コマンドの出力は、次のコマンドの入力に接続されます。

単純なコマンドとパイプラインは `; 'でシーケンスに結合でき、実行されます
順次。 コマンドとパイプラインは、 `|| 'を使用してシーケンスに結合することもできますまたは `&& '、
C言語の場合と同様に、XNUMX番目は最初の場合にのみ実行されることを示します
それぞれ失敗または成功します。

単純なコマンド、パイプライン、またはシーケンスを括弧 `() 'で囲んで、
単純なコマンド。これは、パイプラインまたはシーケンスのコンポーネントである可能性があります。 コマンド、
パイプラインまたはシーケンスは、それに従うことにより、終了するのを待たずに実行できます
`& 'で。

ビルトイン   非ビルトイン command 実行
組み込みコマンドはシェル内で実行されます。 パイプラインのコンポーネントが
最後は組み込みコマンドで、パイプラインはサブシェルで実行されます。

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

(cd; pwd); pwd

したがって、 ホーム ディレクトリ、あなたがいた場所に残します(家の後にこれを印刷します
ディレクトリ)、

CD; pwd

にあなたを残します ホーム ディレクトリ。 括弧で囲まれたコマンドは、ほとんどの場合、防止するために使用されます
cd 現在のシェルに影響を与えることから。

実行するコマンドが組み込みコマンドではないことが判明した場合、シェルは次のことを試みます。
経由でコマンドを実行します 実行する(2)。 変数の各単語 path のディレクトリに名前を付けます
シェルがコマンドを検索します。 シェルが与えられていない場合 -f オプション、
シェルは、これらのディレクトリ内の名前を内部テーブルにハッシュして、
実行する(2)コマンドが存在する可能性のあるディレクトリのみ。
これにより、多数のディレクトリが存在する場合にコマンドの場所が大幅に高速化されます。
検索パス。 このハッシュメカニズムは使用されません。

1. を介してハッシュが明示的にオフになっている場合 ハッシュを解除する.

2. シェルが与えられた場合 -f 引数。

3. のディレクトリコンポーネントごとに path これは `/ 'で始まりません。

4. コマンドに `/ 'が含まれている場合。

上記のXNUMXつのケースでは、シェルはパスベクトルの各コンポーネントを
与えられたコマンド名は、ファイルのパス名を形成し、それを実行しようとします。 もしも
実行が成功すると、検索は停止します。

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

「#!」を理解しないシステムの場合スクリプトインタプリタの規則シェルは
それをエミュレートするためにコンパイルされました。 を参照してください バージョン シェル変数。 もしそうなら、シェルは最初にチェックします
ファイルの行で、「#!」の形式であるかどうかを確認します。通訳 argは ... '。 もしそうなら、シェル
開始 通訳 与えられた argは■標準入力でファイルをファイルにフィードします。

入出力
コマンドの標準入力と標準出力は、次のようにリダイレクトできます。
構文:

< オープンファイル (これは最初の変数であり、コマンドとファイル名が展開されています)
標準入力。
<< 単語 と同一の行までシェル入力を読み取ります 単語. 単語 ではありません
変数、ファイル名、またはコマンド置換の対象であり、各入力行は
に比べ 単語 この入力行で置換が行われる前。 でない限り
`\ '、` "'、` 'または ``'を引用すると 単語 変数とコマンド置換は
間にある行で実行され、 `\ 'が` $'、 `\ '、および` `'を引用できるようにします。
置換されるコマンドでは、すべての空白、タブ、および改行が保持されます。
ドロップされる最後の改行を除いて。 結果のテキストは、
標準入力としてコマンドに与えられる匿名の一時ファイル。
>
>!
>&
>&!
ファイル 標準出力として使用されます。 ファイルが存在しない場合は、
作成した; ファイルが存在する場合、そのファイルは切り捨てられ、以前の内容は失われます。

シェル変数の場合 ノークロバー が設定されている場合、ファイルは存在してはならず、
文字特殊ファイル(例:ターミナルまたは `/ dev / null ')またはエラーが発生します。
これは、ファイルの偶発的な破壊を防ぐのに役立ちます。 この場合、 `! ' フォーム
このチェックを抑制するために使用できます。

`& 'を含むフォームは、診断出力を指定されたファイルに次のようにルーティングします。
標準出力と同様に。 `<'入力と同じ方法で展開されます
ファイル名はです。
>>
>>&
>>!
>>&!
`> 'と同様ですが、出力を末尾に追加します 。 シェル変数の場合 ノークロバー
が設定されている場合は、ファイルのエラーです `! 'のXNUMXつでない限り、存在するフォーム
与えられます。

コマンドは、シェルによって変更されたシェルが呼び出された環境を受け取ります。
入出力パラメーターとパイプライン内のコマンドの存在。 したがって、一部とは異なり
以前のシェルでは、シェルコマンドのファイルから実行されるコマンドは、のテキストにアクセスできません。
デフォルトのコマンド。 むしろ、シェルの元の標準入力を受け取ります。
インラインデータを表示するには、「<<」メカニズムを使用する必要があります。 これにより、シェルコマンドが許可されます
スクリプトはパイプラインのコンポーネントとして機能し、シェルがその読み取りをブロックできるようにします
入力。 デタッチされたコマンド実行のデフォルトの標準入力は 空の
file / dev / null、ただし、シェルの元の標準入力。 これが端末の場合
プロセスが端末から読み取ろうとすると、プロセスはブロックされ、
ユーザーに通知されます(を参照) 求人).

診断出力は、標準出力のパイプを介して送信できます。 単に使用する
単なる `| 'ではなく` |&'を形成します。

シェルは現在、標準をリダイレクトせずに診断出力をリダイレクトすることはできません
出力しますが、 `( command > 出力ファイル)>& エラーファイル'は、多くの場合、許容できる回避策です。
どちらでも 出力ファイル or エラーファイル 端末に出力を送信する場合は `/ dev / tty 'の場合があります。

オプション
シェルがコマンドラインを受け入れ、解析し、実行する方法を説明したので、次に
その便利な機能の様々な。

管理 フロー
シェルには、制御の流れを調整するために使用できるいくつかのコマンドが含まれています
コマンドファイル(シェルスクリプト)および(限定的ですが便利な方法で)端末入力から。
これらのコマンドはすべて、シェルに入力の再読み取りまたはスキップを強制することによって動作します。
実装では、いくつかのコマンドの配置を制限します。

当学校区の foreachの, スイッチ, while ステートメント、および if-then-else の形 if
ステートメントでは、主要なキーワードが入力のXNUMXつの単純なコマンドに表示される必要があります
以下に示すような行。

シェルの入力がシーク可能でない場合、ループが発生しているときはいつでもシェルは入力をバッファリングします
この内部バッファで読み取りとシークを実行して、
ループ。 (これが許す範囲で、後方 goto文sはシークできないもので成功します
入力。)


当学校区の if, while   終了する 組み込みコマンドは、一般的な構文の式を使用します。 NS
式には、次のXNUMXつのセクションで説明する任意の演算子を含めることができます。 ノート
その @ 組み込みコマンド(qv)には独自の構文があります。

論理的、 算術   比較 演算子
これらの演算子はCの演算子と似ており、同じ優先順位を持っています。 それらは含まれています

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

ここで、優先順位は右に向かって増加します。 `== '`!=' `=〜 'および`!〜'、 `<= '`> =' `<'および
`> '、` <<'および `>> '、` +'および `-'、` *' `/ 'および`%'は、グループ内で同じレベルにあります。 NS
`== '`!=' `=〜 'および`!〜'演算子は、引数を文字列として比較します。 他のすべては動作します
数字について。 演算子 `=〜 'と`!〜'は、右手以外は `!= 'と` =='に似ています。
側面はグロブパターンです(を参照) ファイル名 置換)左側のオペランドが
一致しました。 これにより、 スイッチ シェルスクリプトの組み込みコマンド
本当に必要なのはパターンマッチングだけです。

ヌルまたは欠落している引数は「0」と見なされます。 すべての式の結果は文字列です。
XNUMX進数を表します。 のXNUMXつのコンポーネントはないことに注意することが重要です
式は同じ単語に表示できます。 式のコンポーネントに隣接している場合を除く
パーサーにとって構文的に重要なもの( `& '` |' `<'`>' `( '') ')
スペースに囲まれています。

Command 終了する status
コマンドは式で実行でき、コマンドを囲むことで終了ステータスが返されます
中かっこ( `{} ')で。 中かっこは、の単語から分離する必要があることを忘れないでください
スペースによるコマンド。 コマンドの実行は成功し、コマンドがtrueの場合、true、つまり「1」を返します。
ステータス0で終了します。それ以外の場合は失敗し、false、つまり「0」を返します。 より詳細な場合
ステータス情報が必要な場合、コマンドは外部で実行する必要があります
表現と status シェル変数を調べました。

File お問い合わせ 演算子
これらの演算子の一部は、ファイルおよび関連オブジェクトに対してtrue / falseテストを実行します。 彼らです
フォームの -op fileここで、 op の一つである

r 読み取りアクセス
w 書き込みアクセス
x アクセスを実行する
X パスまたはシェルビルトインで実行可能ファイル。たとえば、 `-X ls 'および` -X ls-F'は一般的に
本当ですが、 `-X / bin / ls'は(+)ではありません
e 存在
o 所有権
z ゼロサイズ
s ゼロ以外のサイズ(+)
f プレーンファイル
d ディレクトリ
l シンボリックリンク(+)*
b 特殊ファイルをブロックする(+)
c キャラクタースペシャルファイル(+)
p 名前付きパイプ(fifo)(+)*
S ソケット特殊ファイル(+)*
u Set-user-IDビットが設定されます(+)
g Set-group-IDビットが設定されます(+)
k スティッキービットが設定されている(+)
t file (数字である必要があります)は、端末デバイスの開いているファイル記述子です(+)
R 移行済み(凸面のみ)(+)
L 複数演算子テストの後続の演算子をシンボリックリンクに適用します
リンクが指すファイルよりも(+)*

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

簡潔にするために、これらの演算子を組み合わせることができます。`-xy file'は `-と同等ですx file &&
-y file'。 (+)たとえば、プレーンな実行可能ファイルの場合、 `-fx 'はtrue(` 1'を返します)ですが、
ディレクトリ用ではありません。

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

期待する演算子を組み合わせることが可能ですが、有用ではなく、時には誤解を招く可能性があります
file 演算子を含まないファイルにする(例: X   t)。 続く L
ファイル演算子は、特に奇妙な結果につながる可能性があります。

他の演算子は、「0」や「1」だけでなく、他の情報を返します。 (+)彼らは
以前と同じ形式。 op のいずれかである可能性があります

A エポックからの秒数としての最終ファイルアクセス時間
A: いいね A、ただしタイムスタンプ形式、例: `Fri May 14 16:36:10 1993 '
M 最終ファイル変更時刻
M: いいね M、ただしタイムスタンプ形式
C 最終iノード変更時刻
C: いいね C、ただしタイムスタンプ形式
D 装置番号
I iノード番号
F 複合 file識別子、形式 デバイス:アイノード
L シンボリックリンクが指すファイルの名前
N (ハード)リンクの数
P 先行ゼロなしのXNUMX進数の権限
P: いいね P、先行ゼロ付き
Pモード `-Pに相当 file & モード'、例えば、 `-P22 file'は `22'を返します file is
グループおよびその他で書き込み可能、​​グループのみの場合は「20」、どちらでもない場合は「0」
Pモード: いいね Pモード、先行ゼロ付き
U 数値ユーザーID
U: ユーザー名、またはユーザー名が不明な場合は数値のユーザーID
G 数値グループID
G: グループ名、またはグループ名が不明な場合は数値のグループID
Z サイズ(バイト単位)

これらの演算子のXNUMXつだけが複数の演算子のテストに表示される可能性があり、それは
過去。 ご了承ください L 複数の終わりと他の場所で異なる意味を持っています-
オペレーターテスト。 `0 'はこれらの演算子の多くにとって有効な戻り値であるため、
失敗しても `0 'を返さない:ほとんどは` -1'を返し、 F `: 'を返します。

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

ファイル照会演算子は、 ファイルテスト 組み込みコマンド(qv)(+)。

求人
シェルは ジョブ 各パイプラインで。 それは印刷された現在の仕事の表を保持します
を通じて、タンピングされたコーヒーベッドの上から均一にフィルターバスケットの内の粉に浸透していきます。 jobs コマンドを実行し、それらに小さな整数を割り当てます。 ジョブが開始されたとき
`& 'と非同期で、シェルは次のような行を出力します

[1] 1234

非同期で開始されたジョブがジョブ番号1であり、XNUMXつあったことを示します。
(トップレベル)プロセス。プロセスIDは1234でした。

あなたが仕事をしていて、何か他のことをしたいなら、あなたはサスペンドキーを押すかもしれません
(通常は `^ Z ')、これは現在のジョブにSTOP信号を送信します。 その後、シェルは
通常、ジョブが「一時停止」されたことを示し、別のプロンプトを出力します。 の場合
リストジョブ シェル変数が設定されている場合、すべてのジョブは次のように一覧表示されます。 jobs 組み込みコマンド; もしも
「long」に設定すると、リストは「jobs-l」のように長い形式になります。 その後、
中断されたジョブの状態を操作します。 あなたはそれを「背景」に置くことができます
bg コマンドを実行するか、他のコマンドを実行して、最終的にジョブを
「フォアグラウンド」と fg。 (も参照してください 実行-fg-エディター エディタコマンド。) `^ Z 'が有効になります
すぐに、保留中の出力と未読の入力が破棄されるという点で割り込みのようなものです
入力したとき。 NS wait 組み込みコマンドにより、シェルはすべてのバックグラウンドを待機します
完了するジョブ。

`^] 'キーは遅延サスペンド信号を送信しますが、これはSTOP信号を生成します。
プログラムはしようとします read(2)それ、現在の仕事に。 これは、次の場合に便利に事前に入力できます。
コマンドを読み取った後で停止したいジョブのコマンドをいくつか用意しました。
`^ Y 'キーは、この機能を CSH(1); の tcsh、 `^ Y 'は編集コマンドです。 (+)

バックグラウンドで実行されているジョブは、端末から読み取ろうとすると停止します。 バックグラウンド
通常、ジョブは出力を生成できますが、これを無効にするには、
コマンド `stty tostop '。 このttyオプションを設定すると、バックグラウンドジョブは次の場合に停止します。
入力を読み取ろうとするときと同じように、出力を生成しようとします。

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

シェルは、現在および以前のジョブの概念を維持します。 に関連する出力で
ジョブの場合、現在のジョブは「+」でマークされ、前のジョブは「-」でマークされます。 NS
略語 `%+ '、`%'、および( 歴史 メカニズム) `%% '
すべて現在のジョブを参照し、 `%-'は前のジョブを参照します。

ジョブ制御メカニズムでは、 スティ(1)一部のシステムではオプション「new」が設定されています。
これは、ttyドライバーの「新しい」実装からのアーティファクトであり、
キーボードから文字を中断して、ジョブを停止するように指示します。 見る スティ(1)と セティ
新しいttyドライバーのオプション設定の詳細については、組み込みコマンドを参照してください。

ステータス 報告
シェルは、プロセスが状態を変更するたびにすぐに学習します。 それは通常あなたに知らせます
ジョブがブロックされてそれ以上の進行が不可能になるときはいつでも、正しいだけです
プロンプトを出力する前。 これは、他の方法で作業を妨げないようにするために行われます。
ただし、シェル変数を設定した場合 通知する、シェルはすぐに通知します
バックグラウンドジョブのステータスの変更。 シェルコマンドもあります 通知する これは
ステータスの変更がすぐに報告されるように単一のプロセス。 デフォルトでは 通知する
現在のプロセスをマークします。 バックグラウンドジョブを開始した後、単に「通知」と言ってマークを付けます。

ジョブが停止しているときにシェルを離れようとすると、「
中断された仕事。」 あなたは使用することができます jobs それらが何であるかを確認するコマンド。 これを行う場合または
すぐにもう一度終了しようとすると、シェルはXNUMX回目の警告を表示せず、
中断されたジョブは終了します。

自動、 periodic   時限 イベント (+)
コマンドを実行したり、さまざまな場所で他のアクションを自動的に実行したりするには、さまざまな方法があります
シェルの「ライフサイクル」の回数。 それらはここに要約され、
適切な下の詳細 ビルトイン コマンド, Special shell variables   Special
エイリアス.

当学校区の 予定 組み込みコマンドは、コマンドをスケジュールされたイベントリストに入れ、
与えられた時間にシェル。

当学校区の beepcmd, cwdcmd, periodic, 事前コマンド, ポストコマンド, ジョブコマンド Special エイリアス 設定可能、
それぞれ、シェルがベルを鳴らしたいときにコマンドを実行します。
ディレクトリの変更、すべて 期間 分、各プロンプトの前、各コマンドが取得する前
各コマンドが実行された後、およびジョブが開始または導入されたときに実行されます
フォアグラウンド。

当学校区の 自動ログアウト シェル変数は、指定された数の後にシェルをログアウトまたはロックするように設定できます
何分間も活動していません。

当学校区の mail シェル変数を設定して、新着メールを定期的にチェックできます。

当学校区の 印刷終了値 シェル変数を設定して、コマンドの終了ステータスを出力できます。
ゼロ以外のステータスで終了します。

当学校区の アームスター シェル変数は、 `rm * 'が入力されたときに、ユーザーに尋ねるように設定できます。
本当に何を意味したのか。

当学校区の 時間 シェル変数を設定して、 時間 後の組み込みコマンド
指定されたCPU秒数を超えるプロセスの完了。

当学校区の watch   who シェル変数は、選択したユーザーがログインまたはログアウトしたときにレポートするように設定できます。
ログ 組み込みコマンドは、いつでもそれらのユーザーについて報告します。

ネイティブ 言語 システム 対応 (+)
シェルはXNUMXビットクリーンです(コンパイルされている場合。 バージョン シェル変数)、したがって
この機能を必要とする文字セットをサポートします。 NLSのサポートは、
シェルがシステムのNLSを使用するようにコンパイルされているかどうか(ここでも、を参照してください) バージョン)。 どちらかで
この場合、7ビットASCIIがデフォルトの文字コードです(たとえば、その分類
文字は印刷可能です)、並べ替え、および変更 言語 or LC_CTYPE 環境
変数は、これらの点で可能な変更のチェックを引き起こします。

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

さらに、実際のNLSとシミュレートされたNLSの両方で、範囲内のすべての印刷可能な文字
\ 200- \ 377、つまり、M-を持っているものチャリオット バインディングは、自動的にリバウンドされます 自己
挿入コマンド。 エスケープに対応するバインディング-チャリオット シーケンスがある場合は、残ります
XNUMX人。 これらのキャラクターは、 ノーバインド 環境変数が設定されます。
これは、シミュレートされたNLSまたは完全なISOを想定したプリミティブな実際のNLSに役立つ場合があります
8859-1。 それ以外の場合、すべてのM-チャリオット \ 240〜 \ 377の範囲のバインディングは事実上元に戻されます。
関連するキーを明示的に再バインドする バインドキー もちろんまだ可能です。

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

OS 異形 対応 (+)
特定の操作機能をサポートするために、いくつかの新しい組み込みコマンドが提供されています
システム。 すべてはで詳細に説明されています ビルトイン コマンド のセクションから無料でダウンロードできます。

TCF(aix-ibm370、aix-ps2)をサポートするシステムでは、 getpath   セットパス 取得して設定します
システム実行パス、 取得   セットバース 実験的なバージョンのプレフィックスを取得して設定します
  移動します サイト間でプロセスを移行します。 NS jobs ビルトインは、
各ジョブが実行されています。

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

ドメイン/ OSの下で、 インリブ 現在の環境に共有ライブラリを追加し、 ルートノード 変更
ルートノードと systypeを変更します。

マッハの下で、 セットパス マッハと同等です セットパスとします。

Masscomp / RTUおよびHarrisCX / UXでは、 宇宙 宇宙を設定します。

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

Convex / OSでは、 ワープ ユニバースを印刷または設定します。

当学校区の VENDOR, OSタイプ   マッハタイプ 環境変数はそれぞれベンダーを示し、
上のシステムのオペレーティングシステムとマシンタイプ(マイクロプロセッサクラスまたはマシンモデル)
シェルはそれが実行されていると見なします。 これらは、自分のを共有するときに特に便利です
いくつかのタイプのマシン間のホームディレクトリ。 たとえば、

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

自分の 〜/ .login 各マシン用にコンパイルされた実行可能ファイルを適切な場所に配置します
ディレクトリにあります。

当学校区の バージョン シェル変数は、シェルがコンパイルされたときに選択されたオプションを示します。

も注意してください 新しいグループ ビルトイン、 告発者   エコースタイル シェル変数とシステム-
シェルの入力ファイルの依存する場所(を参照) ファイル).

シグナル 取り扱い
ログインシェルは、ファイルを読み取るときに割り込みを無視します 〜/ .logout。 シェルは終了を無視します
で開始されていない限り信号 -q。 ログインシェルは終了シグナルをキャッチしますが、ログインしません
シェルは、親から終了動作を継承します。 他の信号には値があります
シェルはその親から継承しました。

シェルスクリプトでは、シェルによる割り込み信号と終了信号の処理は次のようになります。
で制御 内部、およびハングアップの処理は、 ハプ   nohup.

シェルはハングアップで終了します( ログアウト シェル変数)。 デフォルトでは、シェルの
子供もそうしますが、シェルは終了時にハングアップを送信しません。 ハプ 手配する
シェルが終了時に子にハングアップを送信するため、および nohup 無視するように子を設定します
ハングアップ。

ターミナル 管理 (+)
シェルは、ターミナル( `` tty '')モードのXNUMXつの異なるセットを使用します: `edit '、
編集、リテラル文字を引用するときに使用される「quote」、および実行時に使用される「execute」
コマンド。 シェルは各モードでいくつかの設定を一定に保持するため、
混乱した状態のttyは、シェルに干渉しません。 シェルも一致します
ttyの速度とパディングの変更。 一定に保たれるttyモードのリスト
で調べて変更することができます セティ ビルトイン。 エディターは
CBREAKモード(またはそれに相当するもの)、とにかく先行入力文字を取ります。

当学校区の 反響, 設定   教えて コマンドを使用して、端末を操作およびデバッグできます
コマンドラインからの機能。

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

REFERENCE


このマニュアルの次のセクションでは、利用可能なすべてについて説明します ビルトイン コマンド, Special
エイリアス   Special shell variables.

ビルトイン コマンド
%ジョブ の同義語 fg 組み込みコマンド。

%ジョブ & の同義語 bg 組み込みコマンド。

: 何もしません。

@
@ =
@ [index] =
@ ++|--
@ [index]++|--
最初の形式は、すべてのシェル変数の値を出力します。

XNUMX番目の形式は、の値を割り当てます 〜へ 。 XNUMX番目のフォームは
の値 から indexの '番目のコンポーネント ; 両方 とその index'NS
コンポーネントはすでに存在している必要があります。

Cのように、演算子 `* '、` +'などを含めることができます。 `<'を含む、
`> '、`&'または `'そして少なくともその部分 `() '内に配置する必要があります。 ノート
その構文は で説明されていることとは何の関係もありません .

XNUMX番目とXNUMX番目のフォームはインクリメント( `++ ')またはデクリメント(`-')します またはその
index'番目のコンポーネント。

`@ 'との間のスペース 必要とされている。 間のスペース および `= 'および
`= 'と オプションです。 のコンポーネント で区切る必要があります
スペース

alias [ [単語リスト]]
引数なしで、すべてのエイリアスを出力します。 と 、nameのエイリアスを出力します。
自律的AI   単語リスト、割り当てます 単語リスト のエイリアスとして . 単語リスト is
コマンドとファイル名が置き換えられました。 `alias 'または` unalias'ではない場合があります。 も参照してください
  エイリアス 組み込みコマンド。

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

bg [%ジョブ ...]
指定されたジョブ(または、引数なしで現在のジョブ)を
バックグラウンド、停止している場合はそれぞれ続行します。 ジョブ 数字、文字列、 `'、
以下で説明するように、 `% '、` +'または `-' 求人.

バインドキー [-l|-d|-e|-v|-u](+)
バインドキー [-a] [-b] [-k] [-r] [--] キー (+)
バインドキー [-a] [-b] [-k] [-c|-s] [--] キー command (+)
オプションがない場合、最初のフォームには、バインドされたすべてのキーと次のエディターコマンドが一覧表示されます。
それぞれがバインドされているXNUMX番目のフォームには、 キー is
バインドされ、XNUMX番目のフォームはエディターコマンドをバインドします command 〜へ キー。 オプション
次のとおりです。

-l すべてのエディターコマンドとそれぞれの簡単な説明を一覧表示します。
-d すべてのキーをデフォルトエディタの標準バインディングにバインドします。
-e すべてのキーを標準のGNUEmacsのようなバインディングにバインドします。
-v すべてのキーを標準にバインドします vi(1)のようなバインディング。
-a 代替キーマップのキーバインディングを一覧表示または変更します。 これがキーマップです
で使用される vi コマンドモード。
-b キー ^と書かれた制御文字として解釈されます文字 (例: `^ A ')または
C-文字 (例: `C-A ')、M-と書かれたメタ文字文字 (例: `M-A ')、
F-と書かれたファンクションキーstring (例: `F-string ')、または拡張プレフィックスキー
書かれたX-文字 (例: `X-A ')。
-k キー 記号の矢印キー名として解釈されます。これは「下」のいずれかである可能性があります。
「上」、「左」または「右」。
-r 削除 キーのバインディング。 注意してください: `bindkey -r 'は バインド キー 〜へ 自己
挿入コマンド (qv)、バインドを解除します キー 完全に。
-c command エディターではなく、組み込みまたは外部コマンドとして解釈されます

-s command リテラル文字列として扱われ、次の場合に端末入力として扱われます。 キー is
入力しました。 バインドされたキー command それ自体が再解釈され、これは続く
解釈のXNUMXのレベルのため。
-- オプション処理を強制的に中断するため、次の単語は次のように解釈されます。 キー さらに
'-'で始まる場合。
-u (または無効なオプション)
使用法メッセージを出力します。

キー 単一の文字または文字列の場合があります。 コマンドが文字列にバインドされている場合、
文字列の最初の文字はにバインドされています シーケンスリードイン と文字列全体
コマンドにバインドされています。

の制御文字 キー リテラルにすることができます(前に付けることで入力できます
エディターコマンド 引用-挿入、通常は `^ V 'にバインドされます)または書かれたキャレット-
文字スタイル、例えば、 `^ A '。 削除は `^? 'と書かれています(キャレット-疑問符)。 キー
  command バックスラッシュされたエスケープシーケンスを含めることができます(System Vのスタイルで)
echo(1))次のように:

\a ベル
\b バックスペース
\e エスケープ
\f フォームフィード
\n 改行
\r キャリッジリターン
\t 水平タブ
\v 垂直タブ
\NNN XNUMX進数に対応するASCII文字 NNN

`\ 'は、次の文字の特別な意味を無効にします。
特に `\ 'と` ^'。

bs2cmd bs2000-コマンド (+)
パス bs2000-コマンド BS2000コマンドインタプリタに実行してもらいます。 非
対話型コマンドを実行できますが、実行することはできません。
/ EXECUTEや
/ CALL-PROCEDURE。 (BS2000のみ)

破る 後に実行を再開します end 最も近い囲みの foreachの or
while。 現在の行の残りのコマンドが実行されます。 マルチレベル
したがって、ブレークはすべてXNUMX行に書き込むことで可能になります。

壊れるw からの休憩を引き起こします スイッチ、後に再開 終了します.

ビルトイン (+)
すべての組み込みコマンドの名前を出力します。

さようなら (+)の同義語 ログアウト 組み込みコマンド。 シェルがそうだった場合にのみ利用可能
編集済み; を参照してください バージョン シェル変数。

場合 ラベル:
のラベル スイッチ 以下で説明するステートメント。

cd [-p] [-l] [-n|-v] [私 - ] []
ディレクトリの場合 が与えられると、シェルの作業ディレクトリを次のように変更します 。 場合
そうではなく、 ホーム。 場合 `-'は前の作業として解釈されます
ディレクトリ(を参照) その他 置換)。 (+)もし のサブディレクトリではありません
現在のディレクトリ(および `/ '、` ./'、または `../ 'で始まらない)、の各コンポーネント
変数 CDパス サブディレクトリがあるかどうかを確認するためにチェックされます 。 最後に、
他のすべては失敗しますが 値が `/ 'で始まるシェル変数であり、次にこれ
それがディレクトリであるかどうかを確認しようとします。

自律的AI -p、のように、最終的なディレクトリスタックを出力します Dirsを選択します。 -l, -n   -v
フラグは同じ効果があります cd 息子 Dirs、およびそれらは意味します -p。 (+)使用 --
オプション処理を強制的に中断して、次の単語がディレクトリとして使用されるようにします
'-'で始まっていても。 (+)

参照してください 暗黙のcd シェル変数。

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

コンプリート [ command [単語/パターン/リスト[:select]/[[サフィックス]/] ...]](+)
引数なしで、すべての補完を一覧表示します。 と command、の完了を一覧表示します
command command   単語 など、補完を定義します。

command 完全なコマンド名またはglob-patternの場合があります(「 ファイル名 置換).
`-'で始めることができ、補完は次の場合にのみ使用する必要があることを示します command
あいまいです。

単語 現在の単語に関連するどの単語を完成させるかを指定します。
次のいずれかになります。

c 現在の単語の補完。 パターン はグロブパターンであり、
コマンドラインの現在の単語の先頭。 パターン 無視されます
現在の単語を完成させるとき。
C いいね c、ただし含まれています パターン 現在の単語を完成させるとき。
n 次の単語の補完。 パターン はグロブパターンであり、
コマンドラインの前の単語の先頭。
N いいね n、ただし、現在の単語のXNUMXつ前の単語の先頭と一致する必要があります
単語を理解する事です。
p 位置に依存する完了。 パターン は数値範囲であり、同じです
現在の単語を含める必要があるシェル変数のインデックス付けに使用される構文。

リスト、可能な補完のリストは、次のいずれかになります。

a エイリアス
b バインディング(エディターコマンド)
c コマンド(組み込みまたは外部コマンド)
C 指定されたパスプレフィックスで始まる外部コマンド
d ディレクトリ
D 指定されたパスプレフィックスで始まるディレクトリ
e 環境変数
f ファイル名
F 指定されたパスプレフィックスで始まるファイル名
g グループ名
j 求人
l 境界
n 何も
s シェル変数
S シグナル
t プレーン(「テキスト」)ファイル
T 指定されたパスプレフィックスで始まるプレーン(「テキスト」)ファイル
v 任意の変数
u ユーザー名
x いいね n、しかし印刷 select を特定いたします。 リスト-選択肢 使用されている。
X 完了
$VAR 変数からの単語 VAR
(...)与えられたリストからの単語
`...`コマンドの出力からの言葉

select オプションのglob-patternです。 与えられた場合、 リスト その一致
select 考慮され、 無視する シェル変数は無視されます。 最後のXNUMXつ
補完の種類には、 select パターン、および x 使用されます select として
時の説明メッセージ リスト-選択肢 editorコマンドを使用します。

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

command `...`バージョンから呼び出されると、追加の環境変数が設定されます。
変数名は コマンドライン (その名前が示すように)の内容が含まれています
現在の(すでに入力されている)コマンドライン。 内容を調べて使用することができます
コマンドライン より洗練された補完を構築するためのカスタムスクリプトの変数
(の完了を参照してください SVN(1)このパッケージに含まれています)。

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

>完全なcd'p / 1 / d / '

`cd '(` p / 1')に続く最初の単語のみをディレクトリで補完します。 p
補完を使用して、コマンド補完を絞り込むこともできます。

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

この完了により、次で始まるコマンド(位置0、 `p / 0 'の単語)が完了します。
`co '(したがって` co *'に一致)を `compress '(リスト内の唯一の単語)に一致させます。 リーディング
`-'は、この補完があいまいなコマンドでのみ使用されることを示します。

>完全な検索 'n / -user / u /'

の例です n-タイプ補完。 `find 'に続く単語とすぐに
次の `-user 'はユーザーのリストから完成します。

>完全なcc'c / -I / d / '

実証 c-タイプ補完。 `cc 'に続き、` -I'で始まる単語
ディレクトリとして完成します。 `-I 'はディレクトリの一部として扱われません。
小文字を使用しました c.

異なる リストsはさまざまなコマンドで役立ちます。

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

エイリアスを含む `alias '、コマンドを含む` man'に続くこれらの完全な単語、および
シェル変数で「設定」します。 `true 'にはオプションがないため、 x 何もしない
完了が試行され、「真実にはオプションがありません」と出力された場合。 完了時
選択肢が一覧表示されます。

なお、 man 例、および以下の他のいくつかの例も同様に可能性があります
'p / *'として 'c / *'または 'n / *'を使用しました。

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

>完全なftp'p / 1 / $ 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

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

>完全なキル 'p / * / `ps | awk \ {print \ \ $ 1 \} `/ '
>キル-9 [^ D]
23113 23377 23380 23406 23429 23529 23530 PID

なお、 コンプリート コマンド自体は引数を引用しないため、中括弧、
`{print $ 1} 'のスペースと` $'は明示的に引用符で囲む必要があります。

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

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

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

当学校区の select パターンは、コマンドが特定の形式のみのファイルを取得する場合に役立ちます
引数として。 例えば、

>完全なcc'p / * / f:*。[cao] / '

`.c '、` .a'、または `.o 'のみで終わるファイルへの` cc'引数を完了します。 select できる
また、以下で説明するようにglob-patternの否定を使用して、ファイルを除外します。 ファイル名
置換。 使用する可能性があります

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

貴重なソースコードを `rm '補完から除外します。 もちろん、それでも
除外された名前を手動で入力するか、を使用して完了メカニズムをオーバーライドします
完全な単語-生 or リスト-選択肢-生 エディターコマンド(qv)。

「C」、「D」、「F」、「T」 リストsはそれぞれ `c '、` d'、 `f '、` t'に似ていますが、
彼らは select 別の方法で引数:ファイルへの完了を制限する
特定のパスプレフィックスで始まります。 たとえば、Elmメールプログラムは
メールディレクトリの略語としての `= '。 使用する可能性があります

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

`elm -f = 'を` elm-fのように完成させる 〜/メール/'。 `@ 'を使用したことに注意してください
`/ 'の代わりに select 引数、そして私たちは `$ HOME 'を使用しました
ホームディレクトリの置換は先頭でのみ機能するため、 `〜 'の代わりに
単語。

サフィックス 非標準のサフィックス(ディレクトリのスペースや `/ 'ではない)をに追加するために使用されます
完成した言葉。

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

ユーザーのリストから `finger 'への引数を完成させ、` @'を追加してから、
`hostnames '変数の` @'の後に完了します。 の順序に再度注意してください
補完が指定されています。

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

>完全な検索\
'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 \
グループfstypeタイプatimectime深さinum \
ls mtime nogroup nouser perm print prune \
サイズxdev)/ '\
'p / * / d /'

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

完了している単語が
チルダ置換( `〜 'で始まる)または変数(` $'で始まる)。
コンプリート は実験的な機能であり、構文は将来のバージョンで変更される可能性があります
シェルの。 も参照してください 未完成 組み込みコマンド。

続ける
最も近い囲みの実行を継続します while or foreachの。 残りの
現在の行のコマンドが実行されます。

デフォルト:
デフォルトのケースにラベルを付けます スイッチ 声明。 やっぱり来るべき 場合
ラベル

Dirs [-l] [-n|-v]
Dirs -S|-L [ファイル名](+)
Dirs -c (+)
最初の形式は、ディレクトリスタックを出力します。 スタックの一番上は左側にあります
スタックの最初のディレクトリは現在のディレクトリです。 と -l、 `〜 'または
`~出力の 'は明示的に次のように展開されます ホーム または家のパス名
ユーザーのディレクトリ 。 (+)と -n、エントリは、に到達する前にラップされます
画面の端。 (+)と -v、エントリはXNUMX行にXNUMXつずつ印刷され、その前に
それらのスタック位置。 (+)複数の場合 -n or -v 与えられる、 -v 取り
優先順位。 -p 受け入れられますが、何もしません。

自律的AI -S、XNUMX番目の形式は、ディレクトリスタックをに保存します ファイル名 のシリーズとして cd
  pushdは コマンド。 と -L、シェルソース ファイル名、おそらく
によって保存されたディレクトリスタックファイル -S オプションまたは セーバー 機構。 どちらかで
場合、 ディレクトリファイル 次の場合に使用されます ファイル名 与えられておらず、 〜/ .cshdirs 次の場合に使用されます ディレクトリファイル
設定されていません。

ログインシェルは、起動時に `dirs -L 'と同等の処理を行うことに注意してください。 セーバー
が設定され、終了する前に `dirs -S '。 なぜなら 〜/ .tcshrc 通常は供給されます
〜/ .cshdirs, ディレクトリファイル に設定する必要があります 〜/ .tcshrc ではなく 〜/ .login.

最後の形式は、ディレクトリスタックをクリアします。

echo [-n] 単語 ...
それぞれを書く 単語 シェルの標準出力に、スペースと
改行で終了しました。 NS エコースタイル シェル変数をエミュレートするように設定できます
(またはそうでない)BSDおよび/またはSystemVバージョンのフラグとエスケープシーケンス
echo; 湖 echoとします。

反響 [-sv] argは ...(+)
ターミナル機能を実行します(を参照) Termcap(5)) 引数。 例えば、
「echotchome」はカーソルをホームポジションに送信し、「echotc cm 3」はカーソルをに送信します
列3と行10、および 'echotc ts 0; echo "これはテストです。"; echotcfsのプリント
"これはテストです。" ステータス行にあります。

If argは 'baud'、 'cols'、 'lines'、 'meta'、または 'tabs'であり、その値を出力します
機能(「はい」または「いいえ」は、端末にそれがあるかどうかを示します
容量)。 これを使用して、シェルスクリプトからの出力を少なくすることができます
低速端末では冗長にするか、コマンド出力を上の行数に制限します
画面:

> set history = `echotc lines`

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

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

自律的AI -s、存在しない機能は、を引き起こすのではなく、空の文字列を返します
エラー。 と -v、メッセージは冗長です。

ほかに
end
ENDIF
終了します の説明を参照してください foreachの, if, スイッチ, while 以下のステートメント。

評価する argは ...
引数をシェルへの入力として扱い、結果のコマンドを実行します
現在のシェルのコンテキストで。 これは通常、コマンドを実行するために使用されます
解析のため、コマンドまたは変数の置換の結果として生成されます
これらの置換の前に発生します。 見る ツェット(1)のサンプル使用 評価する.

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

終了する []
シェルは、指定された値で終了します (式、として
以下に説明 )または、なし 、値は0です。

fg [%ジョブ ...]
指定されたジョブ(または、引数なしで現在のジョブ)を
フォアグラウンド、停止している場合はそれぞれ続行します。 ジョブ 数字、文字列、 `'、
以下で説明するように、 `% '、` +'または `-' 求人。 参照 実行-fg-エディター エディタ


ファイルテスト -op file ...(+)
適用 op (これは、以下で説明するファイル照会演算子です。 File お問い合わせ
演算子) それぞれに file 結果をスペースで区切られたリストとして返します。

foreachの (単語リスト)
...
end 変数を連続して設定します の各メンバーに 単語リスト そして実行します
このコマンドと一致するコマンド間の一連のコマンド end。 (両方 foreachの  
end 別の行に単独で表示する必要があります。)組み込みコマンド 続ける 多分
ループを途中で続行するために使用され、組み込みコマンド 破る 終了します
それは時期尚早です。 このコマンドが端末から読み取られると、ループが読み取られます
`foreach? ' (また プロンプト2)ループ内のステートメントが
実行されました。 ターミナルでループを入力するのを間違えた場合は、それをこすることができます
不足しています。

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

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

地球 単語リスト
いいね echo、ただし、 `-n 'パラメータは認識されず、単語は次のように区切られます。
出力にヌル文字。 シェルを使用したいプログラムに便利です
filenameは、単語のリストを展開します。

goto文 単語
単語 はファイル名であり、コマンドで置換されて「ラベル」形式の文字列を生成します。
シェルは入力を可能な限り巻き戻し、フォームの行を検索します
`label: '、おそらく空白またはタブが前にあり、その後も実行を継続します
ライン。

ハッシュスタット
内部ハッシュテーブルの効果を示す統計行を出力します
コマンドの検索時(および回避時) exec'NS)。 NS exec それぞれに対して試行されます
のコンポーネント path ここで、ハッシュ関数はヒットの可能性を示します。
`/ 'で始まらない各コンポーネント。

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

歴史 [-hTr] [n]
歴史 -S|-L | -M [ファイル名](+)
歴史 -c (+)
最初のフォームは、履歴イベントリストを出力します。 もしも n のみが与えられます n 最も
最近のイベントが印刷または保存されます。 と -h、履歴リストはなしで印刷されます
先行番号。 もしも -T を指定すると、タイムスタンプもコメント形式で出力されます。
(これは、「history-L」または
'source -h'。) -r、印刷の順序は、ではなく最新のものです。
最も古いものから。

自律的AI -S、XNUMX番目のフォームは履歴リストをに保存します ファイル名。 の最初の単語の場合
  セーブヒスト シェル変数は数値に設定され、多くてもその数の行が保存されます。
のXNUMX番目の単語の場合 セーブヒスト が `merge 'に設定されている場合、履歴リストは
既存の履歴ファイル(存在する場合)を置き換える代わりに、
タイムスタンプ。 (+)マージは、X WindowSystemのような環境を対象としています
同時に使用されているいくつかのシェルで。 現在、成功するのは
シェルは次々とうまく終了します。

自律的AI -L、シェルが追加します ファイル名、おそらくによって保存された履歴リストです
  -S オプションまたは セーブヒスト メカニズム、履歴リストへ。 -M のようなものです -L、 だけど
の内容 ファイル名 履歴リストにマージされ、タイムスタンプで並べ替えられます。
どちらの場合にも、 履歴ファイル 次の場合に使用されます ファイル名 与えられておらず、 〜/ .history 使用されている
if 履歴ファイル 設定されていません。 `history -L 'は、それを除いて' source-h 'とまったく同じです。
ファイル名は必要ありません。

ログインシェルは、起動時に `history -L 'と同等の処理を行うことに注意してください。
セーブヒスト が設定され、終了する前に `history -S '。 なぜなら 〜/ .tcshrc 通常は
以前に調達 〜/ .history, 履歴ファイル に設定する必要があります 〜/ .tcshrc ではなく
〜/ .login.

If 履歴書 が設定されると、最初とXNUMX番目のフォームがリテラルを印刷して保存します
(拡張されていない)形式の履歴リスト。

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

ハプ [ command](+)
自律的AI command、走る command ハングアップ信号で終了し、調整するように
シェルが終了したときにシェルがハングアップ信号を送信するため。 コマンドに注意してください
ハングアップに対する独自の応答を設定して、オーバーライドする場合があります ハプ。 議論なしで、
非対話型シェルは、残りのハングアップでのみ終了します。
脚本。 も参照してください シグナル 取り扱いnohup 組み込みコマンド。

if () command
If (以下で説明する式 )trueと評価され、次に
command 実行されます。 上の変数置換 command 同時に、早期に発生します
残りの時間 if command 単純なコマンドである必要があります、
エイリアス、パイプライン、コマンドリスト、または括弧で囲まれたコマンドリストではなく、
引数があるかもしれません。 入出力リダイレクトは、 偽であり、
command したがって、 実行された; これはバグです。

if () その後
...
ほかに if (式2) その後
...
ほかに
...
ENDIF 指定されている場合 真の場合、最初のコマンド ほかに 実行されます。
それ以外の場合 式2 trueの場合、XNUMX番目のコマンド ほかに 実行されるなど。
任意の数 そうでなければ-if ペアが可能です。 唯一 ENDIF が必要です。 ザ・ ほかに
同様にオプションです。 (言葉 ほかに   ENDIF の先頭に表示する必要があります
入力行; NS if 入力行に単独で表示するか、 ほかに.)

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

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

kill [-s 信号] %ジョブ|ピッド ...
kill -l 最初とXNUMX番目のフォームは指定されたを送信します 信号 (または、何も指定されていない場合は、
指定されたジョブまたはプロセスへのTERM(終了)シグナル)。 ジョブ 数字かもしれません、
以下で説明する文字列、 `'、`%'、 `+ 'または`-' 求人。 信号はどちらかが与えられます
番号または名前で( /usr/include/signal.h、プレフィックスを削除
`SIG ')。 デフォルトはありません ジョブ; 「kill」とだけ言っても、シグナルは送信されません。
今の仕事。 送信される信号がTERM(終了)またはHUP(ハングアップ)の場合、
ジョブまたはプロセスにもCONT(続行)シグナルが送信されます。 XNUMX番目のフォームリスト
信号名。

制限 [-h] [リソースを追加する。 [最大使用]]
現在のプロセスとそれが作成する各プロセスによる消費を制限します
個別に超過 最大使用 指定された リソースを追加する。。 いいえの場合 最大使用 is
与えられると、現在の制限が出力されます。 いいえの場合 リソースを追加する。 与えられたら、すべて
制限があります。 の場合 -h フラグが指定され、代わりにハード制限が使用されます
現在の制限の。 ハード制限は、の値に上限を課します
現在の制限。 スーパーユーザーのみがハード制限を引き上げることができますが、ユーザーは
法定範囲内で現在の制限を下げるか上げます。

現在、制御可能なリソースには次のものが含まれます(OSでサポートされている場合)。

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

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

データサイズ
データ+スタック領域の最大成長 sbrk(2)終わりを超えて
プログラムテキスト

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

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

メモリ使用
プロセスが割り当てた可能性のある物理メモリの最大量
与えられた時間

vmemoryuse
プロセスが割り当てた可能性のある仮想メモリの最大量
与えられた時間(アドレス空間)

vmemoryuse
プロセスが割り当てた可能性のある仮想メモリの最大量
与えられた時間

ヒープサイズ
プロセスが割り当てることができるメモリの最大量 brk() システムコール

記述子 or ます。openfiles
このプロセスで開いているファイルの最大数

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

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

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

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

スワップサイズ
このユーザー用に予約または使用されるスワップスペースの最大量

最大ロック
このユーザーのロックの最大数

最大信号
このユーザーの保留中のシグナルの最大数

最大メッセージ
このユーザーのPOSIXmqueuesの最大バイト数

マックスニース
ユーザーがマップを上げることができる最大の素晴らしい優先度
このユーザーの[19 ...- 20]から[0 ... 39]

maxrtprio
このユーザーの最大リアルタイム優先度 最大時間 RTのタイムアウト
このユーザーのマイクロ秒単位のタスク。

最大使用 (浮動小数点または整数)の後に続く(浮動小数点または整数)として指定できます。
スケールファクター。 以外のすべての制限 CPU時間 デフォルトのスケールは `k 'または
`キロバイト '(1024バイト); `m 'または`メガバイト'または `g 'または
「ギガバイト」も使用できます。 にとって CPU時間 デフォルトのスケーリングは「秒」ですが、
「m」は分、「h」は時間、または「mm:ss」の形式の時間は分と
秒を使用できます。

If 最大使用 が「無制限」の場合、指定された制限 リソースを追加する。 is
削除されました(これは 無制限 組み込みコマンド)。

従来製品のアプリケーションと リソースを追加する。 名前と倍率、名前の明確な接頭辞
十分です。

ログ (+)を印刷します watch シェル変数と、で示される各ユーザーに関するレポート watch 誰ですか
最後にログインした日時に関係なく、ログインしました。関連項目 ウォッチログ.

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

ログアウト ログインシェルを終了します。 特に便利な場合 無視する 設定されています。

ls-F [-スイッチ ...] [file ...](+)
`ls -F 'のようなファイルを一覧表示しますが、はるかに高速です。 スペシャルの各タイプを識別します
特殊文字を含むリスト内のファイル:

/ディレクトリ
* 実行可能
#デバイスをブロックする
%キャラクターデバイス
| 名前付きパイプ(名前付きパイプのみのシステム)
=ソケット(ソケットを備えたシステムのみ)
@シンボリックリンク(シンボリックリンクのみのシステム)
+隠しディレクトリ(AIXのみ)またはコンテキスト依存(HP / UXのみ)
:ネットワークスペシャル(HP / UXのみ)

Status リストリンク シェル変数が設定され、シンボリックリンクが詳細に識別されます
詳細(もちろん、それらを備えたシステムのみ):

@非ディレクトリへのシンボリックリンク
>ディレクトリへのシンボリックリンク
&どこへのシンボリックリンク

リストリンク また、速度が低下します ls-F によってポイントされたファイルを保持するパーティションを引き起こします
マウントするシンボリックリンク。

Status リストフラグ シェル変数は、 `x '、` a'、 `A '、または任意の組み合わせに設定されます
その(例えば、 `xA ')、それらはフラグとして使用されます ls-F、 `ls -xF 'のように動作させます。
`ls -Fa '、` ls -FA'、またはそれらの組み合わせ(たとえば、 `ls -FxA ')。 `ls -C 'が存在するマシンの場合
デフォルトではありません、 ls-F `ls -CF 'のように機能します。 リストフラグ に `x 'が含まれています
この場合、 `ls -xF 'のように機能します。 ls-F その引数をに渡します ls(1)もしそうなら
任意のスイッチが与えられると、 `alias ls ls-F 'は一般的に正しいことを行います。

当学校区の ls-F ビルトインは、ファイルタイプに応じて異なる色を使用してファイルを一覧表示できます
または拡張。 を参照してください カラー シェル変数と LS_COLORS 環境
変数に保存します.

移動します [-ウェブサイト] ピッド|%ジョブID ...(+)
移動します -ウェブサイト (+)
最初のフォームは、プロセスまたはジョブを指定されたサイトまたはデフォルトのサイトに移行します
システムパスによって決定されるサイト。 XNUMX番目の形式は `migrateと同等です
-ウェブサイト $$ ':現在のプロセスを指定されたサイトに移行します。 の移行
シェル自体は予期しない動作を引き起こす可能性があります。
そのttyを失います。 (TCFのみ)

新しいグループ [-] [グループ] (+)
`exec newgrp 'と同等です。 見る 新しいグループ(1)。 シェルがそうだった場合にのみ利用可能
編集済み; を参照してください バージョン シェル変数。

nice [+] [ command]
シェルのスケジューリング優先度をに設定します 、または、なし 、4まで。
自律的AI command、走る command 適切な優先順位で。 大きいほど ,
プロセスが取得するCPUが少なくなります。 スーパーユーザーは、次の方法で負の優先度を指定できます。
`nice -number ... 'を使用します。 コマンドは常にサブシェルで実行され、
単純なコマンドに課せられた制限 if ステートメントが適用されます。

nohup [ command]
自律的AI command、走る command ハングアップ信号を無視するように。 ご了承ください
コマンドは、ハングアップに対する独自の応答を設定して、オーバーライドする場合があります nohup。 なし
引数、非対話型シェルがのハングアップのみを無視するようにします
スクリプトの残りの部分。 も参照してください シグナル 取り扱いハプ 組み込みコマンド。

通知する [%ジョブ ...]
いずれかのステータスが発生したときに、シェルがユーザーに非同期で通知するようにします。
指定されたジョブ(または、%なしジョブ、現在のジョブ)を待つのではなく、変更します
いつものように次のプロンプトまで。 ジョブ 数字、文字列、 `'、`%'、 `+ '、または
以下に説明する `-' 求人。 参照 通知する シェル変数。

内部 [-|ラベル]
割り込みに対するシェルのアクションを制御します。 引数なしで、を復元します
割り込みに対するシェルのデフォルトのアクション。これは、シェルスクリプトを終了することです。
ターミナルコマンド入力レベルに戻ります。 `-'を使用すると、すべての割り込みが
無視されます。 と ラベル、シェルに `gotoを実行させます ラベル'とき
割り込みを受信するか、割り込みが発生したために子プロセスが終了します。

内部 シェルがデタッチされて実行されており、システム起動ファイルにある場合は無視されます
(参照してください ファイル)、とにかく割り込みが無効になっている場合。

popdを [-p] [-l] [-n|-v] [+n]
引数なしで、ディレクトリスタックをポップし、新しい最上位ディレクトリに戻ります。
数字で `+n'、破棄します nスタックの '番目のエントリ。

最後に、すべての形式 popdを ちょうど同じように、最終的なディレクトリスタックを印刷します Dirsを選択します。
プッシュサイレント シェル変数を設定して、これと -p フラグを付けることができます
オーバーライドする プッシュサイレントを選択します。 -l, -n   -v フラグは同じ効果があります popdを as
on Dirs。 (+)

printenv [](+)
すべての環境変数の名前と値を出力します。 、 値
環境変数の .

pushdは [-p] [-l] [-n|-v] [|+n]
引数なしで、ディレクトリスタックの上位XNUMXつの要素を交換します。 もしも
ホームにプッシュ 設定され、 pushdは 引数なしで `pushd〜 'は次のようになります cd。 (+)と
、現在の作業ディレクトリをディレクトリスタックにプッシュし、次のように変更します。
。 場合 `-'は、前の作業ディレクトリとして解釈されます(を参照してください)。
ファイル名 置換)。 (+)もし デュニーク 設定され、 pushdは のインスタンスを削除します
スタックにプッシュする前にスタックから。 (+)数字で `+n',
回転します nディレクトリスタックのth要素が最上位要素になり、
それに変更します。 もしも 抽出物 が設定されていますが、 `pushd +n'抽出 nth
ディレクトリ、それをスタックの一番上にプッシュし、それに変更します。 (+)

最後に、すべての形式 pushdは ちょうど同じように、最終的なディレクトリスタックを印刷します Dirsを選択します。
プッシュサイレント シェル変数を設定して、これと -p フラグを付けることができます
オーバーライドする プッシュサイレントを選択します。 -l, -n   -v フラグは同じ効果があります pushdは as
on Dirs。 (+)

再ハッシュ 内のディレクトリの内容の内部ハッシュテーブルを引き起こします path
再計算される変数。 これは、 自動リハッシュ シェル変数は
setおよびnewコマンドがのディレクトリに追加されます path ログインしている間。
自律的AI 自動リハッシュ、特別な場合を除いて、新しいコマンドが自動的に検出されます
同じ名前の別のコマンドが別の場所にある場合
ディレクトリはすでにハッシュテーブルに存在します。 また、家のキャッシュをフラッシュします
チルダ拡張によって構築されたディレクトリ。

繰り返す カウント command
目標とする抽出時間(Shot time target) 適正な品質基準を達成するための抽出時間の範囲。 command、と同じ制限が適用されます command in
一行 if 上記のステートメントが実行されます カウント 回数。 I / Oリダイレクトが発生します
たとえ一度でも カウント 0です。

ルートノード //ノード名 (+)
ルートノードを//に変更しますノード名、そのため、 `/ 'は次のように解釈されます
`//ノード名'。 (ドメイン/ OSのみ)

予定 (+)
予定 [+]hh:mm command (+)
予定 -n (+)
最初のフォームは、スケジュールされたイベントのリストを印刷します。 The 予定 シェル変数は
スケジュールされたイベントリストが印刷される形式を定義するために設定されます。 二番目
フォームが追加されます command スケジュールされたイベントのリストに。 例えば、

> sched 11:00 echo It \ 's XNUMX時。

シェルに「11時です」とエコーさせます。 午前XNUMX時。 時間はあるかもしれません
12時間AM / PM形式

> sched 5pm set prompt = '[%h] 5時以降。 家に帰る:> '

または、現在の時刻に相対的である可能性があります。

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

相対時間指定では、AM / PM形式を使用できない場合があります。 XNUMX番目のフォームは削除します
項目 n イベントリストから:

>スケジュール
1月4日水曜日15:42 / usr / lib / uucp / uucico -r1 -sother
2月4日水曜日17:00set prompt = [%h] 5時以降。 家に帰る:>
> sched -2
>スケジュール
1月4日水曜日15:42 / usr / lib / uucp / uucico -r1 -sother

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

このメカニズムは、 at(1)一部のUnixでのコマンド
システム。 その主な欠点は、正確にコマンドを実行できない可能性があることです。
指定された時間。 その主な利点は 予定 から直接実行されます
シェル、シェル変数やその他の構造にアクセスできます。 これは
時間帯に応じて作業環境を変える仕組み。

セッションに
セッションに ...
セッションに =単語 ...
セッションに [-NS] [-f | -l] =(単語リスト) ...(+)
セッションに 名前[インデックス]=単語 ...
セッションに -r (+)
セッションに -r ...(+)
セッションに -r =単語 ...(+)
コマンドの最初の形式は、すべてのシェル変数の値を出力します。 変数
括弧で囲まれた単語リストとして複数の単語が印刷されます。 The
XNUMX番目のフォームセット null文字列に。 XNUMX番目のフォームセット シングルに
単語。 XNUMX番目のフォームセット の単語リストに 単語リスト。 すべての場合
値はコマンドとファイル名が展開されています。 もしも -r が指定されると、値が設定されます
読み取り専用。 もしも -f or -l 指定されている場合は、順序を維持しながら一意の単語のみを設定します。
-f 単語の最初の出現を優先し、 -l 最後。 XNUMX番目のフォームセット
  indexの '番目のコンポーネント 〜へ 単語; このコンポーネントはすでに存在している必要があります。 The
XNUMX番目の形式は、読み取り専用であるすべてのシェル変数の名前のみをリストします。 ザ
XNUMX番目の形式は 値があるかどうかに関係なく、読み取り専用。 XNUMX番目のフォーム
XNUMX番目の形式と同じですが、 同時に読み取り専用。

これらの引数を繰り返して、で読み取り専用の複数の変数を設定および/または作成できます。
単一のセットコマンド。 ただし、変数の展開はすべての人に発生することに注意してください
設定が行われる前の引数。 `= 'は両方に隣接できることにも注意してください
  単語 または空白で両方から分離されていますが、隣接することはできません
どちらか一方。 も参照してください unset 組み込みコマンド。

設定環境 [ []]
引数なしで、すべての環境変数の名前と値を出力します。
与えられた 、環境変数を設定します 〜へ または、なし
null文字列。

セットパス path (+)
に相当 セットパス(1)。 (マッハのみ)

セットパス ローカル|ウェブサイト|CPU ...(+)
システム実行パスを設定します。 (TCFのみ)

設定 キャップ (+)
ターミナル機能を信じるようにシェルに指示します キャップ (で定義されているように
Termcap(5))は値を持っています 。 健全性チェックは行われません。 コンセプトターミナル
ユーザーは、右端の列を適切に折り返すために「settcxnno」を実行する必要がある場合があります。

セティ [-d|-q|-x] [-a] [[+|-]モード](+)
どのttyモードを制御します(を参照) ターミナル 管理)シェルは許可していません
変更します。 -d, -q or -x 伝える セティ 「編集」、「引用」、または「実行」セットに基づいて動作します
それぞれttyモードの; それなし -d, -q or -x、 `execute 'が使用されます。

他の議論なしで、 セティ 選択したセット内の固定されているモードを一覧表示します
オン( `+ mode ')またはオフ(` -mode')。 使用可能なモード、つまり表示は異なります
システムからシステムへ。 と -a、選択したセット内のすべてのttyモードを一覧表示します。
それらは修正されていません。 と +モード, -モード or モード、修正 モード オンまたはオフまたは削除
からの制御 モード 選択したセットで。 たとえば、 `setty + echok echoe 'は修正します
`echok 'モードをオンにし、コマンドで` echoe'モードをオンまたはオフにすることができます。
シェルがコマンドを実行しています。

セットバース [string](+)
実験バージョンのプレフィックスをに設定します string、または削除する場合 string 省略されます。
(TCFのみ)

シフト [変数]
引数なしで、破棄します 引数[1]そしてのメンバーをシフトします 引数 左の方です。
のエラーです 引数 設定しない、または値としてXNUMX語未満にすることはできません。
自律的AI 変数、で同じ機能を実行します 変数.

source [-h] [引数 ...]
シェルはからコマンドを読み取って実行します 。 コマンドは配置されません
履歴リスト。 もしあれば 引数 与えられ、それらはに配置されます 引数。 (+) source
コマンドはネストできます。 ネストが深すぎると、シェルが不足する可能性があります
ファイル記述子。 のエラー source どのレベルでも、ネストされたすべてを終了します source
コマンド。 と -h、コマンドは、ではなく履歴リストに配置されます
`history -L 'のように実行されます。

stop %ジョブ|ピッド ...
バックグラウンドで実行されている指定されたジョブまたはプロセスを停止します。 ジョブ
以下で説明するように、数値、文字列、 `'、`%'、 `+ '、または`-'の場合があります。 求人。 がある
デフォルトなし ジョブ; 「停止」と言っても、現在のジョブは停止しません。

サスペンド 停止信号が送信されたかのように、シェルをそのトラックで停止させます
  ^Z。 これは、によって開始されたシェルを停止するために最もよく使用されます suとします。

スイッチ (string)
場合 str1:
...
壊れるw
...
デフォルト:
...
壊れるw
終了します 各ケースラベルは、指定されたものに対して連続して照合されます string どちらである
最初のコマンドとファイル名が展開されました。 ファイルのメタ文字 `* '、`?' と `[...] '
可変展開されるケースラベルで使用できます。 どれも
「デフォルト」ラベルが見つかる前にラベルが一致し、その後実行が開始されます
デフォルトのラベル。 各ケースラベルとデフォルトラベルは、
行の始まり。 コマンド 壊れるw その後も実行を継続します
終了します。 そうしないと、Cのようにケースラベルとデフォルトラベルを介して制御が失敗する可能性があります。
一致するラベルがなく、デフォルトがない場合、実行は 終了します.

教えて (+)
すべての端末機能の値を一覧表示します(を参照) Termcap(5))。

用語名 [ターミナル type](+)
次の場合にテストします ターミナル type (またはの現在の値 TERM いいえの場合 ターミナル type 与えられます)
ホストにエントリがあります Termcap(5)または 端末情報(5)データベース。 端末を印刷します
stdoutと入力し、エントリが存在する場合は0を返し、存在しない場合は1を返します。

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

umask []
ファイル作成マスクをに設定します 、XNUMX進数で指定されます。 の一般的な値
マスクは002であり、グループへのすべてのアクセス権と、
その他、および022、グループおよびその他への読み取りおよび実行アクセスを許可します。 それなし
、現在のファイル作成マスクを出力します。

エイリアス パターン
名前が一致するすべてのエイリアスを削除します パターン。 したがって、 `unalias * 'はすべてを削除します
エイリアス。 何もないのは間違いではありません エイリアスエド。

未完成 パターン (+)
名前が一致するすべての補完を削除します パターン。 したがって、 `uncomplete * 'は削除されます
すべての完了。 何もないのは間違いではありません 未完成d.

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

宇宙 宇宙 (+)
宇宙をに設定します 宇宙。 (Masscomp / RTUのみ)

無制限 [-hf] [リソースを追加する。]
の制限を削除します リソースを追加する。 または、ない場合 リソースを追加する。 指定されている、すべて リソースを追加する。
制限。 と -h、対応するハード制限が削除されます。 スーパーのみ
ユーザーはこれを行うことができます。 ご了承ください 無制限 ほとんどのシステムは正常に終了しない可能性があります
許可しない 記述子 無制限に。 と -f エラーは無視されます。

unset パターン
名前が一致するすべての変数を削除します パターン、読み取り専用でない限り。
したがって、 `unset * 'は、読み取り専用でない限り、すべての変数を削除します。 これは悪いです
考え。 何もないのは間違いではありません unset.

設定解除 パターン
名前が一致するすべての環境変数を削除します パターン。 `unsetenv * 'したがって
すべての環境変数を削除します。 これは悪い考えです。 エラーではありません
何もありません 設定解除エド。

[システムタイプ [ command]](+)
引数なしで、 システムタイプ システムタイプ、セット システムタイプ 〜へ システムタイプ
システムタイプ   command、実行 commandシステムタイプ. システムタイプ `bsd4.3 'または
`sys5.3 '。 (ドメイン/ OSのみ)

wait シェルはすべてのバックグラウンドジョブを待機します。 シェルがインタラクティブな場合、
割り込みは待機を中断し、シェルに名前とジョブを出力させます
すべての未解決の仕事の数。

ワープ 宇宙 (+)
宇宙をに設定します 宇宙。 (凸/ OSのみ)

ウォッチログ (+)
の別名 ログ 組み込みコマンド(qv)。 シェルの場合にのみ使用可能
そのようにコンパイルされました。 を参照してください バージョン シェル変数。

コラボレー command (+)
のすべての既知のインスタンスを報告します command、エイリアス、ビルトイン、
の実行可能ファイル path.

which command (+)
置換後にシェルによって実行されるコマンドを表示します。 path
検索など。組み込みコマンドは次のようなものです。 which(1)、しかしそれは正しく
レポート tcsh エイリアスとビルトインで、10倍から100倍高速です。 も参照してください
which-コマンド エディターコマンド。

while ()
...
end との間のコマンドを実行します while マッチング end while
以下で説明する式 )ゼロ以外を評価します。 while   end
入力行に単独で表示する必要があります。 破る   続ける に使用される可能性があります
ループを途中で終了または続行します。 入力が端末の場合、ユーザー
と同様に、ループを介して最初にプロンプ​​トが表示されます foreachの.

Special エイリアス (+)
設定されている場合、これらの各エイリアスは指定された時間に自動的に実行されます。 それらはすべてです
最初は未定義です。

beepcmd シェルがターミナルベルを鳴らしたいときに実行されます。

cwdcmd 作業ディレクトリが変更されるたびに実行されます。 たとえば、ユーザーが作業している場合
Xウィンドウシステムで xterm(1)およびリペアレンティングウィンドウマネージャー
次のようなタイトルバーをサポートします twm(1)そしてします

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

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

> alias cwdcmd'echo -n "^ [] 2; $ {HOST}:$ cwd ^ G ^ [] 1; $ {HOST} ^ G" '

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

置くことに注意してください cd, pushdは or popdを in cwdcmd 無限ループが発生する可能性があります。 です
そうすることで誰もが彼らにふさわしいものを手に入れるだろうという著者の意見。

ジョブコマンド 各コマンドが実行される前、またはコマンドの状態が変化したときに実行されます。 この
に似ています ポストコマンド、ただし、ビルトインは印刷されません。

> alias jobcmd'echo -n "^ [] 2 \; \!#:q ^ G" '

その後、実行します vi foo.c コマンド文字列をxtermのタイトルバーに配置します。

ヘルプコマンド
によって呼び出されます 実行ヘルプ エディターコマンド。 ヘルプが求められるコマンド名
唯一の引数として渡されます。 たとえば、

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

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

periodic
毎回実行 期間 分。 これは、チェックするための便利な手段を提供します
新着メールなど、一般的ですがまれな変更。 たとえば、

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

そうして チェックニュース(1)プログラムは30分ごとに実行されます。 もしも periodic 設定されていますが
期間 未設定または0に設定されている、 periodic のように振る舞う 事前コマンド.

事前コマンド 各プロンプトが出力される直前に実行されます。 たとえば、

>エイリアスprecmd日付

その後 date(1)シェルが各コマンドのプロンプトを表示する直前に実行されます。 ここにはない
何の制限 事前コマンド 行うように設定できますが、裁量を使用する必要があります。

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

> alias postcmd'echo -n "^ [] 2 \; \!#:q ^ G" '

その後、実行します vi foo.c コマンド文字列をxtermのタイトルバーに配置します。

shell それ自体が指定しない実行可能スクリプトのインタープリターを指定します
通訳者。 最初の単語は、目的のパス名にする必要があります
インタプリタ(例: `/ bin / csh 'または` / usr / local / bin / tcsh')。

Special shell variables
このセクションで説明する変数は、シェルにとって特別な意味を持っています。

シェルセット adduffix, 引数, 自動ログアウト, csubstnonl, command, エコースタイル, edit, ギッド,
グループヘッド, ホーム, ログインしている, OID, path, プロンプト, プロンプト2, プロンプト3, shell, シェルベル, tcsh, 期間, TTY,
UID, user   バージョン 起動時; によって変更されない限り、その後は変更されません
ユーザー。 シェルの更新 cwd, ディレクトリスタック, 所有   status 必要に応じて、 ログアウト on
ログアウト。

シェルは同期します グループヘッド, ホーム, path, シェルベル, 期間   user 環境と
同じ名前の変数:環境変数が変更されるたびにシェルが変更されます
一致する対応するシェル変数(シェル変数が読み取り専用でない場合)および
逆に。 ただし、注意してください cwd   PWD 同じ意味を持っていますが、そうではありません
この方法で同期され、シェルが自動的に異なるものを相互変換します
のフォーマット path   パス.

adduffix (+)
設定されている場合、ファイル名の補完により、ディレクトリの末尾に「/」が追加され、
完全に一致した場合の通常のファイルの終わり。 デフォルトで設定されます。

告発者 (+)
設定されている場合、 自動ログアウトの自動ロック機能は、ローカルユーザー名の代わりにその値を使用します
Kerberos認証用。

午前午後 (+)
設定されている場合、すべての時間は12時間AM / PM形式で表示されます。

引数 シェルへの引数。 位置パラメータはから取得されます 引数、つまり、 `$ 1 '
は `$ argv [1] 'などに置き換えられます。デフォルトで設定されますが、インタラクティブでは通常空です
シェル。

オートコレクト (+)
設定されている場合、 スペルワード エディターコマンドは、それぞれの前に自動的に呼び出されます
完了の試み。

自動拡張 (+)
設定されている場合、 拡張履歴 エディターコマンドは、それぞれの前に自動的に呼び出されます
完了の試み。 これがに設定されている場合 唯一の歴史、その後は歴史だけになります
展開され、XNUMX回目の完了でファイル名が展開されます。

自動リスト (+)
設定されている場合、あいまいな完了後に可能性がリストされます。 に設定されている場合
「あいまい」、可能性は、によって新しい文字が追加されていない場合にのみリストされます
完了。

自動ログアウト (+)
最初の単語は、自動ログアウトまでの非アクティブの分数です。
オプションのXNUMX番目の単語は、自動になるまでの非アクティブの分数です。
ロック。 シェルが自動的にログアウトすると、 `auto-logout 'が出力され、
変数 ログアウト 「自動」に移行して終了します。 シェルが自動的にロックされると、
ユーザーが作業を続行するには、パスワードを入力する必要があります。 XNUMXつの間違った
試行すると、自動ログアウトが発生します。 `60 'に設定(60以降の自動ログアウト
ログインシェルとスーパーユーザーシェルでは、デフォルトで数分、ロックなし)ですが、
シェルは、ウィンドウシステムの下で実行されていると見なします(つまり、 DISPLAY 環境
変数が設定されている)、ttyが疑似tty(pty)であるか、シェルがそのようにコンパイルされていない
(参照 バージョン シェル変数)。 も参照してください 告発者   ログアウト shell
変数。

自動リハッシュ (+)
設定されている場合、のディレクトリの内容の内部ハッシュテーブル path
コマンドがハッシュテーブルに見つからない場合、変数は再計算されます。 の
さらに、使用可能なコマンドのリストは、コマンドごとに再構築されます
「complete」または「correct」に設定されている場合、完了またはスペル修正の試行
それぞれ; 「常に」に設定されている場合、これは両方の場合に実行されます。

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

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

CDパス ディレクトリのリスト cd サブディレクトリが検索されない場合は検索する必要があります
現在のディレクトリにあります。

カラー 設定すると、ビルトインのカラー表示が可能になります ls-F そしてそれは通過します --color = auto
〜へ ls。 または、のみに設定することもできます ls-F またはのみ ls 色を有効にするには
XNUMXつのコマンドのみ。 何も設定しないことは、に設定することと同じです。 (ls-F ls).

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

command (+)
設定されている場合、シェルに渡されたコマンド -c フラグ(qv)。

compat_expr (+)
設定されている場合、シェルは元の式と同様に、式を右から左に評価します CSH.

コンプリート (+)
`igncase 'に設定すると、補完は大文字と小文字を区別しなくなります。 に設定されている場合
「拡張」、完了は大文字と小文字を無視し、ハイフンとアンダースコアを次のように見なします
同等; また、ピリオド、ハイフン、アンダースコア( `。 '、`-'、 `_ ')も処理します。
ワードセパレーターとして。 `Enhance 'に設定されている場合、補完は大文字と一致します
文字を明示的にアンダースコアし、大文字と小文字の小文字とハイフンに一致させます-
無感覚な方法; ピリオド、ハイフン、アンダースコアを単語として扱います
セパレータ。

続ける (+)
コマンドのリストに設定されている場合、シェルは代わりにリストされたコマンドを続行します
新しいものを始めることの。

continue_args (+)
続行と同じですが、シェルは次のように実行されます。

echo `pwd` $ argv> 〜/。_一時停止; %

正しい (+)
`cmd 'に設定すると、コマンドのスペルが自動的に修正されます。 に設定されている場合
`complete '、コマンドは自動的に完了します。 `all 'に設定すると、全体
コマンドラインが修正されました。

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

cwd 現在のディレクトリの絶対パス名。 も参照してください ディレクトリスタック   所有 shell
変数。

抽出物 (+)
設定されている場合、 `pushd +n'抽出 nディレクトリスタックではなく、ディレクトリスタックからのthディレクトリ
上に回転させます。

ディレクトリファイル (+)
`dirs -S 'と` dirs -L'が履歴ファイルを探すデフォルトの場所。 もしも
未設定、 〜/ .cshdirs 使用されている。 なぜなら 〜/ .tcshrc 通常は以前に調達されます
〜/ .cshdirs, ディレクトリファイル に設定する必要があります 〜/ .tcshrc ではなく 〜/ .login.

ディレクトリスタック (+)
ディレクトリスタック上のすべてのディレクトリの配列。 `$ dirstack [1] 'は
現在の作業ディレクトリ、 `$ dirstack [2] 'スタックの最初のディレクトリなど。
現在の作業ディレクトリは `$ dirstack [1] 'ですが、ディレクトリでは` = 0'であることに注意してください。
スタック置換など。設定することでスタックを任意に変更できます。
ディレクトリスタック、ただし、最初の要素(現在の作業ディレクトリ)は常に正しいです。
参照してください cwd   所有 シェル変数。

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

> dspmbyte = 0000 ....(256バイト).... 0000を設定します

テーブルには ただ 256バイト。 256文字の各文字が対応します
(左から右へ)ASCIIコード0x00、0x01、... 0xffへ。 各キャラクターは
番号0,1,2、3、XNUMX、およびXNUMXに設定します。各番号の意味は次のとおりです。
0 ...マルチバイト文字には使用されません。
1 ...マルチバイト文字の最初のバイトに使用されます。
2 ...マルチバイト文字のXNUMX番目のバイトに使用されます。
3 ...マルチバイト文字の最初のバイトとXNUMX番目のバイトの両方に使用されます。

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

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

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

デュニーク (+)
設定されている場合、 pushdは のインスタンスを削除します スタックからプッシュする前に
スタック

echo 設定されている場合、引数を持つ各コマンドは、実行される直前にエコーされます。 にとって
非組み込みコマンドは、エコーする前にすべての拡張が発生します。 組み込みコマンドは
コマンドとファイル名の置換の前にエコーされます。これらの置換は
その後、選択的に行われます。 によって設定 -x コマンドラインオプション。

エコースタイル (+)
のスタイル echo ビルトイン。 次のように設定できます

bsd最初の引数が `-n 'の場合、改行をエコーし​​ないでください。
sysvエコー文字列のバックスラッシュされたエスケープシーケンスを認識します。
両方 `-n 'フラグとバックスラッシュされたエスケープシーケンスの両方を認識します。 the
デフォルト。
noneどちらも認識しません。

デフォルトでは、ローカルシステムのデフォルトに設定されています。 BSDとSystemVのオプションは
echo(1)適切なシステムのマニュアルページ。

edit (+)
設定されている場合、コマンドラインエディタが使用されます。 インタラクティブシェルではデフォルトで設定されています。

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

イード (+)
ユーザーの実効ユーザーID。

ユーザー (+)
実効ユーザーIDに対応する最初に一致するpasswdエントリー名。

無視する (+)
完了時に無視されるファイル名のサフィックスをリストします。

感じた In tcsh、completionは常に使用され、この変数はデフォルトで無視されます。 もしも
edit 設定されていない、そして伝統的な CSH 補完が使用されます。 に設定されている場合 CSH,
ファイル名の補完が使用されます。

ギッド (+)ユーザーの実際のグループID。

グロブドット (+)
設定されている場合、ワイルドカードグロブパターンはで始まるファイルとディレクトリに一致します
`。 ' `。 'を除いてと `.. '

グロブスター (+)
設定されている場合、 `** 'および` ***'ファイルグロブパターンは任意の文字列に一致します
既存のサブディレクトリをトラバースする `/ 'を含みます。 (例: `ls **。c 'はリストされます
現在のディレクトリツリー内のすべての.cファイル)。 単独で使用した場合、一致します
XNUMX個以上のサブディレクトリに一致します(例: `ls / usr / include /** / time.h 'は任意のリストを表示します
内の `time.h 'という名前のファイル / usr / include ディレクトリツリー; 一方、 `ls
/ usr / include /** time.h 'は、 / usr / include ディレクトリツリー
`time.h 'で終わる)。 再帰の問題を防ぐために、 `** 'glob-pattern
ディレクトリを含むシンボリックリンクに降りることはありません。 これをオーバーライドするには、
`*** 'を使用

グループヘッド (+)
ユーザーのグループ名。

ハイライト
設定されている場合、インクリメンタルサーチの一致( i-検索-戻る   i-検索-転送)と
マークとカーソルの間の領域がリバースビデオで強調表示されます。

強調表示には、より頻繁な端末書き込みが必要であり、余分なものが導入されます
オーバーヘッド。 端末のパフォーマンスが気になる場合は、これを残しておくことをお勧めします
未設定。

ヒスチャー
で使用される文字を決定する文字列値 沿革 置換 (qv)。
その値の最初の文字は、履歴置換文字として使用されます。
デフォルト文字 `! 'を置き換えます。 その値のXNUMX番目の文字が置き換えられます
クイック置換の文字 `^ '。

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

履歴ファイル (+)
`history -S 'と` history-L'が履歴を検索するデフォルトの場所
ファイル。 設定されていない場合、 〜/ .history 使用されている。 履歴ファイル 同じものを共有するときに便利です
異なるマシン間のホームディレクトリ、または別々の履歴を保存する場合
別の端末。 なぜなら 〜/ .tcshrc 通常は以前に調達されます
〜/ .history, 履歴ファイル に設定する必要があります 〜/ .tcshrc ではなく 〜/ .login.

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

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

ホーム 呼び出し元のホームディレクトリに初期化されます。 `のファイル名拡張~'
この変数を参照します。

無視する
空の文字列または「0」に設定され、入力デバイスが端末の場合、 の終わり-
file コマンド(通常、ユーザーが空の行に「^ D」と入力して生成します)
シェルに「「exit」を使用してtcshを終了」と出力させます。 終了する代わりに。 この
シェルが誤って殺されるのを防ぎます。 歴史的にこの設定
無限ループを回避するために、26回の連続したEOFの後に終了しました。 数値に設定されている場合 n,
シェルは無視します n - 1 連続した ファイルの終わりsおよびで終了します nth。 (+)もし
設定されていない場合、 `1 'が使用されます。つまり、シェルは単一の` ^ D'で終了します。

暗黙のcd (+)
設定されている場合、シェルは入力されたディレクトリ名をコマンドとして処理します。
そのディレクトリへの変更をリクエストします。 に設定されている場合 詳細、ディレクトリの変更
標準出力にエコーされます。 この動作は非対話型では抑制されます
シェルスクリプト、または複数の単語を含むコマンド文字列の場合。 ディレクトリの変更
同じ名前のコマンドの実行よりも優先されますが、エイリアスの後に実行されます
置換。 チルダと変数の拡張は期待どおりに機能します。

入力モード (+)
「挿入」または「上書き」に設定されている場合、エディタは次の入力モードになります。
各行の先頭。

キルダップ (+)
キルリング内の重複エントリの処理を制御します。 「すべて」に設定されている場合のみ
キルリングには一意の文字列が入力されます。 `prev 'に設定され、最後に殺された場合
文字列は現在殺された文字列と同じであり、現在の文字列はそうではありません
リングに入った。 `erase 'に設定され、同じ文字列がkillで見つかった場合
リングを鳴らすと、古い文字列が消去され、現在の文字列が挿入されます。

殺害 (+)
メモリに保持するために強制終了された文字列の数を示します。 デフォルトでは「30」に設定されています。
設定されていないか、 `2 '未満に設定されている場合、シェルは最新のもののみを保持します
殺された文字列。 文字列は、削除するエディタコマンドによってkillringに入れられます
(kill)テキストの文字列、例: 後方削除ワード, キルライン、など、および
リージョンをキルとしてコピー コマンド。 の ヤンク エディターコマンドは最近ヤンクします
コマンドラインに文字列を強制終了しました。 ヤンクポップ (参照してください エディター コマンド)することができます
以前に殺された文字列をヤンクするために使用されます。

リストフラグ (+)
`x '、` a'、 `A '、またはそれらの任意の組み合わせ(` xA'など)に設定されている場合、それらが使用されます
のフラグとして ls-F、 `ls -xF '、` ls -Fa'、 `ls -FA '、またはそれらの組み合わせのように動作させます
(例: `ls -FxA '):` a'はすべてのファイルを表示します( `。 'で始まっている場合でも)、` A'はを表示します
`。 '以外のすべてのファイルおよび `.. '、および` x'は下向きではなく横向きにソートされます。 XNUMX番目の場合
の言葉 リストフラグ が設定されている場合は、 `へのパスとして使用されますls(1) '。

リストジョブ (+)
設定されている場合、ジョブが一時停止されたときにすべてのジョブが一覧表示されます。 `long 'に設定すると、
リストは長い形式です。

リストリンク (+)
設定されている場合、 ls-F 組み込みコマンドは、各シンボリックが対象となるファイルのタイプを表示します
リンクポイント。

リストマックス (+)
アイテムの最大数 リスト-選択肢 エディターコマンドはリストします
最初に尋ねることなく。

リスト最大行 (+)
アイテムの最大行数 リスト-選択肢 エディターコマンドは
最初に尋ねずにリストします。

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

ログアウト (+)
シェルによって、通常のログアウトの前に「通常」に設定され、通常のログアウトの前に「自動」に設定されます。
自動ログアウト、およびシェルがハングアップ信号によって強制終了された場合は「ハングアップ」(を参照)
シグナル 取り扱い)。 も参照してください 自動ログアウト シェル変数。

mail 受信メールをチェックするためのファイルとディレクトリのリスト。オプションで前に付けられます
数字の単語。 各プロンプトの前に、最後から10分が経過した場合
チェックすると、シェルは各ファイルをチェックし、「新着メールがあります」と表示します。 (または、 mail
複数のファイルが含まれています、 `あなたは新しいメールを持っています 。 ')ファイルサイズが大きい場合
サイズがゼロより大きく、変更時間がアクセス時間よりも長くなっています。

ログインシェルを使用している場合は、メールファイルが報告されていない限り報告されません。
冗長性を防ぐために、シェルの起動後に変更されました
通知。 ほとんどのログインプログラムは、メールがあるかどうかを教えてくれます
ログインしたとき。

で指定されたファイルの場合 mail はディレクトリであり、シェルは内の各ファイルをカウントします
そのディレクトリを別のメッセージとして送信し、「 n メール。」 または `あなた
持ってる n のメール 。」 適切に。 この機能は主に提供されます
Andrew Mail Systemなど、この方法でメールを保存するシステムの場合。

の最初の単語の場合 mail 数値であり、別のメールチェックと見なされます
間隔(秒単位)。

非常にまれな状況では、シェルが「メールがあります」と報告する場合があります。 それ以外の
「新着メールがあります。」

マッチビープ (+)
`never 'に設定すると、完了はビープ音を鳴らしません。 `nomatch 'に設定すると、ビープ音のみが鳴ります
一致するものがない場合。 「あいまい」に設定すると、複数ある場合にビープ音が鳴ります
一致します。 `notunique 'に設定すると、正確なものとそれより長いものがある場合にビープ音が鳴ります
一致します。 設定されていない場合、「あいまい」が使用されます。

ビープ音なし (+)
設定されている場合、ビープ音は完全に無効になります。 も参照してください ビジブルベル.

ノークロバー
設定されている場合、ファイルがないことを保証するために出力リダイレクトに制限が課せられます
誤って破壊され、その `>> 'リダイレクトは既存のファイルを参照します。
入出力 のセクションから無料でダウンロードできます。

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

ノグロブ 設定されている場合、 ファイル名 置換   ディレクトリ スタック 置換 (qv)は
抑制。 これは、ファイル名を処理しないシェルスクリプトで最も役立ちます。
または、ファイル名のリストが取得され、それ以上の拡張が行われない場合
望ましい。

のかんじ (+)
設定され、シェルが漢字をサポートしている場合( バージョン シェル変数)、それは
メタキーを使用できるように無効にします。

不一致
設定されている場合、 ファイル名 置換 or ディレクトリ スタック 置換 (qv)これは
既存のファイルと一致しない場合は、エラーが発生するのではなく、変更されません。 これ
置換が不正な形式であるためのエラーです。たとえば、 `echo ['はまだ
エラー。

ノスタット (+)
ディレクトリのリスト(またはディレクトリに一致するglobパターン。を参照)。 ファイル名
置換)それはすべきではありません STAT(2)完了操作中に実行されます。 これは
通常、時間がかかりすぎるディレクトリを除外するために使用されます STAT(2)、
/ afs.

通知する 設定されている場合、シェルはジョブの完了を非同期でアナウンスします。 デフォルトは
プロンプトを印刷する直前にジョブの完了を提示します。

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

所有 (+)古い作業ディレクトリ。 cd   pushdは。 参照
  cwd   ディレクトリスタック シェル変数。

パッドアワー 設定されている場合、0時間および24時間の形式で、パディング「12」の印刷を数時間有効にします。
EG:07:45:42対7:45:42。

パーソクタル
古いバージョンとの互換性を維持するために、0で始まる数値変数は次のとおりです。
XNUMX進数として解釈されません。 この変数を設定すると、適切なXNUMX進構文解析が可能になります。

path 実行可能コマンドを検索するディレクトリのリスト。 ヌルワード
現在のディレクトリを指定します。 ない場合 path 可変の場合はフルパスのみ
名前が実行されます。 path からの起動時にシェルによって設定されます パス 環境
変数または、 パス 存在しません、システムに依存するデフォルトには次のようなものがあります
`(/ usr / local / bin / usr / bsd / binに / usr / bin 。) '。 シェルは `。 'を置くかもしれません最初または最後
in path または、コンパイル方法に応じて完全に省略します。 を参照してください バージョン
シェル変数。 どちらも与えられていないシェル -c-t オプションハッシュ
のディレクトリの内容 path 読んだあと 〜/ .tcshrc そして毎回 path
リセットされます。 のディレクトリに新しいコマンドを追加した場合 path シェルが
アクティブな場合は、 再ハッシュ シェルがそれを見つけるために。

印刷終了値 (+)
設定され、対話型プログラムがゼロ以外のステータスで終了した場合、シェルは次のように出力します。
`終了 status'.

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

%/現在の作業ディレクトリ。
%〜現在の作業ディレクトリですが、ホームディレクトリは次のように表されます。
`〜 'および他のユーザーのホームディレクトリは、次のように` 〜user'で表されます ファイル名
置換。 `〜user '置換は、シェルがすでに使用している場合にのみ発生します
`~user'現在のセッションのパス名。
%c [[0]n]、%。[[0]n]
現在の作業ディレクトリの末尾のコンポーネント、または n 引きずります
数字の場合のコンポーネント n 与えられます。 もしも n スキップされた数である「0」で始まります
コンポーネントは、フォーマットの末尾のコンポーネントの前にあります
`/スキップした>トレーリング '。 の場合 省略記号 シェル変数が設定され、スキップされます
コンポーネントは省略記号で表されるため、全体が「...末尾」になります。
`〜 'の置換は上記の`%〜'のように行われますが、 `〜 'コンポーネントは無視されます
後続コンポーネントをカウントする場合。
%C%cと同様ですが、 `〜 '置換はありません。
%h、%!、!
現在の履歴イベント番号。
%M完全なホスト名。
%m最初の `。 'までのホスト名。
%S(%s)
スタンドアウトモードを開始(停止)します。
%B(%b)
太字モードを開始(停止)します。
%U(%u)
下線モードを開始(停止)します。
%t、%@
12時間AM / PM形式の時刻。
%T `%t 'と似ていますが、24時間形式です(ただし、 午前午後 シェル変数)。
%p12時間AM / PM形式の「正確な」時刻(秒単位)。
%P `%p 'と似ていますが、24時間形式です(ただし、 午前午後 シェル変数)。
\c c のように解析されます バインドキー.
^c c のように解析されます バインドキー.
%%単一の `% '。
%nユーザー名。
%N有効なユーザー名。
%jジョブの数。
%d「日」形式の平日。
%D `dd '形式の日。
%w「月」形式の月。
%W `mm '形式の月。
%y `yy '形式の年。
%Y `yyyy '形式の年。
%lシェルのtty。
%Lプロンプトの最後から表示の最後または最後までクリアします
ライン。
%$ `$ 'の直後のシェルまたは環境変数名を展開します。
%# `> '(またはの最初の文字 プロンプト文字 シェル変数)通常の場合
ユーザー、 `# '(またはのXNUMX番目の文字 プロンプト文字)スーパーユーザー用。
%{string%}
Includes string 文字通りのエスケープシーケンスとして。 にのみ使用する必要があります
端末属性を変更し、カーソル位置を移動しないでください。 この
の最後のシーケンスにすることはできません プロンプト.
%? プロンプトの直前に実行されたコマンドの戻りコード。
%R In プロンプト2、パーサーのステータス。 の プロンプト3、修正された文字列。 の
歴史、履歴文字列。

`%B '、`%S'、 `%U 'および`%{string%} 'はXNUMXビットクリーンシェルでのみ使用できます。
見る バージョン シェル変数。

太字、目立つ、下線のシーケンスは、多くの場合、
スーパーユーザーシェル。 例えば、

>プロンプトを設定= "%m [%h]%B [%@]%b [%/]鳴りましたか?"
ツッ [37] [午後2時54分] [/ usr / accts / sys]鳴った? _

`%t '、`%@'、 `%T '、`%p'、または `%P 'が使用されている場合、 うなずく が設定されていない場合は、印刷します
「DING!」 実際の時間ではなく、時間の変更(つまり、 `:00 '分)。

インタラクティブシェルでは、デフォルトで `%# 'に設定されています。

プロンプト2 (+)
プロンプトを表示する文字列 while   foreachの ループと行末の後
`\ 'で。 と同じフォーマットシーケンスを使用できます プロンプト (qv); 注意してください
`%R 'の可変の意味。 デフォルトで `%Rに設定されていますか? 'インタラクティブシェルで。

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

プロンプト文字 (+)
(XNUMX文字の文字列に)設定されている場合、 プロンプト
シェル変数は、通常のユーザーの最初の文字に置き換えられ、
スーパーユーザーのXNUMX番目の文字。

ホームにプッシュ (+)
設定されている場合、 pushdは 引数なしで `pushd〜 'は次のようになります cd.

プッシュサイレント (+)
設定されている場合、 pushdは   popdを ディレクトリスタックを印刷しないでください。

正確 (+)
設定されている場合、より長い一致が可能であっても、完全一致で完了が完了します。

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

アームスター (+)
設定されている場合、 `rm * 'が実行される前にユーザーにプロンプ​​トが表示されます。

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

セーバー (+)
設定されている場合、シェルは終了する前に `dirs -S 'を実行します。 最初の単語がに設定されている場合
数、多くてもその数のディレクトリスタックエントリが保存されます。

セーブヒスト
設定されている場合、シェルは終了する前に `history -S 'を実行します。 最初の単語がに設定されている場合
数、多くてもその数の行が保存されます。 (数は以下でなければなりません
〜へ 歴史。)XNUMX番目の単語が `merge 'に設定されている場合、履歴リストがマージされます
(存在する場合)既存の履歴ファイルを置き換えるのではなく、
タイムスタンプでソートされ、最新のイベントが保持されます。 (+)

予定 (+)
の形式 予定 組み込みコマンドは、スケジュールされたイベントを出力します。 そうでない場合
与えられた場合、 `%h \ t%T \ t%R \ n 'が使用されます。 フォーマットシーケンスについては、上記で説明しています。
プロンプト; `%R 'の可変的な意味に注意してください。

shell シェルが存在するファイル。 これは、シェルをフォークして解釈するために使用されます
実行ビットが設定されているが、システムで実行できないファイル。
(の説明を参照してください ビルトイン   非ビルトイン command 実行。)初期化
シェルの(システムに依存する)ホームへ。

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

status 変数を除いて、最後のコマンドによって返されたステータス エラー が設定され、
パイプラインまたはバッククォート拡張のエラーは伝播されます(これは
デフォルト CSH 行動、そして現在 tcsh ディフォルト)。 異常終了した場合は
次に、0200がステータスに追加されます。 失敗した組み込みコマンドは終了ステータスを返します
`1 '、他のすべての組み込みコマンドはステータス` 0'を返します。

シンボリックリンク (+)
シンボリックリンク( `symlink ')を制御するためにいくつかの異なる値に設定できます
解決:

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

`ignore 'に設定されている場合、シェルは
リンクが交差する前の現在のディレクトリ。 この意味は cd通り抜ける
シンボリックリンクを入力してから `cd .. 'を実行すると、元のディレクトリに戻ります。 この
組み込みコマンドとファイル名の補完にのみ影響します。

`expand 'に設定されている場合、シェルは実際に展開することによってシンボリックリンクを修正しようとします
パス名のように見える引数。 これは、コマンドだけでなく、すべてのコマンドに影響します
ビルトイン。 残念ながら、これは認識しにくいファイル名では機能しません。
コマンドオプションに埋め込まれているものとして。 引用することで拡大を防ぐことができます。
通常、この設定が最も便利ですが、誤解を招く場合があります。
あるべき引数を認識できないと混乱することがあります
拡大しました。 妥協案は、 `ignore 'を使用し、editorコマンドを使用することです。 ノーマライズ-
path (デフォルトでは^ Xnにバインドされています)必要に応じて。

いくつかの例が整いました。 まず、いくつかのプレイディレクトリを設定しましょう。

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

これがでの動作です シンボリックリンク 未設定、

> cd / tmp / to / dst; エコー$ cwd
/ tmp / to / dst
> cd ..; エコー$ cwd
/ tmp / from

これがでの動作です シンボリックリンク 「追跡」に設定、

> cd / tmp / to / dst; エコー$ cwd
/ tmp / from / src
> cd ..; エコー$ cwd
/ tmp / from

これがでの動作です シンボリックリンク `ignore 'に設定、

> cd / tmp / to / dst; エコー$ cwd
/ tmp / to / dst
> cd ..; エコー$ cwd
/ tmp / to

これが シンボリックリンク `expand 'に設定します。

> cd / tmp / to / dst; エコー$ cwd
/ tmp / to / dst
> cd ..; エコー$ cwd
/ tmp / to
> cd / tmp / to / dst; エコー$ cwd
/ tmp / to / dst
> cd ".."; エコー$ cwd
/ tmp / from
> / bin / echo ..
/ tmp / to
> / bin / echo 「..」
..

`expand '展開1)は、次のようなビルトインの` ignore'と同じように機能することに注意してください。 cd、2)
引用符で囲むことによって防止され、3)ファイル名が非ビルトインに渡される前に発生します
コマンド。

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

期間 ターミナルタイプ。 通常は 〜/ .login 以下に説明するように スタートアップ  
shutdown.

時間 数値に設定されている場合、 時間 ビルトイン(qv)は、それぞれの後に自動的に実行されます
その数のCPU秒以上かかるコマンド。 XNUMX番目の単語がある場合、
これは、の出力のフォーマット文字列として使用されます。 時間 ビルトイン。 (u)
次のシーケンスをフォーマット文字列で使用できます。

%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リソース制限のないシステムでは、最初のXNUMXつのシーケンスのみがサポートされます。
機能。 デフォルトの時刻形式は `%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実行された書き込みシステムコールの数。
%prawディスクデバイスからの読み取り数。
%qrawディスクデバイスへの書き込みの数。

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

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

TTY (+)ttyの名前、またはttyに接続されていない場合は空。

UID (+)ユーザーの実際のユーザーID。

user ユーザーのログイン名。

詳細 設定されている場合、履歴置換後に各コマンドの単語が出力されます
(もしあれば)。 によって設定 -v コマンドラインオプション。

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

8bシェルはXNUMXビットクリーンです。 ディフォルト
7bシェルがXNUMXビットクリーンではありません
wideシェルはマルチバイトエンコーディングでクリーンです(UTF-8など)
nlsシステムのNLSが使用されます。 NLSを備えたシステムのデフォルト
ログインシェルが実行される場合 /etc/csh.login 後ではなく前 /etc/csh.cshrc
  〜/ .login 後ではなく前 〜/ .tcshrc   〜/ .history.
dl`。 ' 最後に入れます path セキュリティのために; ディフォルト
nd`。 ' から省略されています path セキュリティのために
vi vi-スタイル編集はデフォルトではなく エマックス
dtrログインシェルは終了時にDTRをドロップします
さようなら さようなら の同義語です ログアウト   ログ の別名です ウォッチログ
al 自動ログアウト 有効になっています; ディフォルト
漢字は、ロケール設定に従って適切な場合に使用されます。
のかんじ シェル変数が設定されています
smシステムの malloc関数(3)を使用
hb `#! 'シェルスクリプトを実行するときに規則がエミュレートされます
ng 新しいグループ ビルトインが利用可能です
rhシェルは設定を試みます リモートホスト 環境変数
afsシェルは、ローカルの場合、Kerberosサーバーでパスワードを確認します
認証は失敗します。 The 告発者 シェル変数または AFSUSER 環境
変数が設定されている場合、ローカルユーザー名を上書きします。

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

ビジブルベル (+)
設定されている場合、可聴ベルではなく画面フラッシュが使用されます。 も参照してください ビープ音なし.

watch (+)
ログインとログアウトを監視するユーザー/端末のペアのリスト。 どちらかのユーザーの場合
は「任意」であり、すべての端末が特定のユーザーに対して監視され、その逆も同様です。 設定
watch to `(any any) 'は、すべてのユーザーと端末を監視します。 例えば、

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

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

ログインとログアウトはデフォルトで10分ごとにチェックされますが、
watch 非常に多くの分ごとにチェックする数値に設定できます。 例えば、

set watch =(1 any any)

ログイン/ログアウトをXNUMX分ごとに報告します。 せっかちな人のために、 ログ ビルトイン
コマンドは watch いつでも報告してください。 現在のすべてのログインが報告されます(
ログ ビルトイン) watch 最初に設定されます。

当学校区の who シェル変数は、 watch レポート。

who (+)のフォーマット文字列 watch メッセージ。 次のシーケンスは、
与えられた情報:

%nログイン/ログアウトしたユーザーの名前。
%a観察されたアクション、つまり、「ログオン」、「ログオフ」、または「置換」 古いユーザー の上'。
%lユーザーがログイン/ログアウトした端末(tty)。
%Mリモートホストの完全なホスト名、またはログイン/ログアウトがからの場合は「ローカル」
ローカルホスト。
%m最初の `。 'までのリモートホストのホスト名。 フルネームが印刷されます
IPアドレスまたはXWindowSystemディスプレイの場合。

%Mおよび%mは、リモートホスト名をに格納するシステムでのみ使用できます。
/ etc / utmp。 設定されていない場合、 `%nは%mから%a%lになります。 が使用されているか、 `%nに%a%lがあります。 ' の上
リモートホスト名を保存しないシステム。

ワードチャー (+)
によって単語の一部と見なされる英数字以外の文字のリスト
前向きな言葉, バックワードワード など、エディタコマンド。 設定されていない場合、 `*?_-。[]〜= 'が使用されます。

ENVIRONMENT


AFSUSER (+)
に相当 告発者 シェル変数。

COLUMNS ターミナルの列数。 見る ターミナル 管理.

DISPLAY X Window Systemで使用されます(を参照) X(1))。 設定されている場合、シェルは設定されません 自動ログアウト
(qv)。

環境変数EDITOR デフォルトのエディターへのパス名。 も参照してください ビジュアル 環境変数と
  実行-fg-エディター エディターコマンド。

GROUP (+)
に相当 グループヘッド シェル変数。

ホーム に相当 ホーム シェル変数。

主催者 (+)
シェルが実行されているマシンの名前に初期化されます。
によって決定 ホスト名を取得する(2)システムコール。

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

HPATH (+)
コロンで区切られたディレクトリのリスト。 実行ヘルプ エディターコマンドは見えます
コマンドドキュメント用。

言語 好みのキャラクター環境を提供します。 見る ネイティブ 言語 システム 対応.

LC_CTYPE
設定すると、ctype文字の処理のみが変更されます。 見る ネイティブ 言語 システム
対応.

LINES ターミナルの回線数。 見る ターミナル 管理.

LS_COLORS
この変数の形式は、 Termcap(5) ファイル形式; コロン-
"形式の式の分離されたリストxx =文字列"、 どこ "xx「はXNUMXつです-
文字変数名。 関連するデフォルトを持つ変数は次のとおりです。

いいえ0通常の(ファイル名以外の)テキスト
fi0通常のファイル
di 01; 34ディレクトリ
ln 01; 36シンボリックリンク
pi 33名前付きパイプ(FIFO)
だから01; 35ソケット
01; 35ドアを行う
bd 01; 33ブロックデバイス
cd 01; 32キャラクターデバイス
ex 01; 32実行可能ファイル
mi(なし)ファイルがありません(デフォルトはfi)
または(なし)孤立したシンボリックリンク(デフォルトはln)
lc ^ [[左のコード
rcm正しいコード
ec(なし)終了コード(lc + no + rcを置き換えます)

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

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

制御文字は、Cスタイルのエスケープ表記またはで記述できます。
sttyのような^-表記。 Cスタイルの表記は追加します ^[ 脱出のために、 _ 普通の
スペース文字、および ? 削除用。 加えて ^[ エスケープ文字は
のデフォルトの解釈を上書きするために使用されます ^[, ^, :   =.

各ファイルは次のように書き込まれます 。 もし
コードは未定義です、シーケンス 代わりに使用されます。 これは
一般的には使い勝手が良いですが、あまり一般的ではありません。 左、右、および終了コード
提供されているので、共通のパーツを何度も何度も入力する必要はありません。
奇妙な端末をサポートします。 通常、それらを変更する必要はありません。
お使いの端末はISO6429カラーシーケンスを使用していませんが、別のシステムを使用しています。

端末がISO6429カラーコードを使用している場合は、タイプコードを作成できます
(つまり、 lc, rc, ec コード)で区切られた数値コマンドから
セミコロン。 最も一般的なコマンドは次のとおりです。

デフォルトの色に戻すには0
明るい色の場合は1
下線付きのテキストの場合は4
点滅するテキストの場合は5
黒の前景の場合は30
赤い前景の場合は31
緑の前景の場合は32
黄色(または茶色)の前景の場合は33
青い前景の場合は34
紫の前景の場合は35
シアンの前景の場合は36
白(または灰色)の前景の場合は37
黒の背景の場合は40
赤い背景の場合は41
緑の背景の場合は42
黄色(または茶色)の背景の場合は43
青い背景の場合は44
紫色の背景の場合は45
シアンの背景の場合は46
白(または灰色)の背景の場合は47

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

一部のターミナルプログラムは、デフォルトの終了コードを正しく認識しません。 私は落ちる
ディレクトリリストを作成するとテキストが色付けされます。変更してみてください いいえ   fi
0から標準の前色と背景色の数値コードまでのコード。

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

ノーバインド (+)
設定されている場合、印刷可能な文字はにリバウンドされません 自己挿入コマンド。 見る ネイティブ
言語 システム 対応.

OSタイプ (+)
コンパイル時に決定されたオペレーティングシステム。

パス 実行可能ファイルを検索するディレクトリのコロンで区切られたリスト。
に相当 path シェル変数ですが、形式が異なります。

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

リモートホスト (+)
この場合、ユーザーがリモートでログインしたホスト。
シェルはそれを決定することができます。 シェルがそのようにコンパイルされた場合にのみ設定します。 を参照してください
バージョン シェル変数。

SHLVL (+)
に相当 シェルベル シェル変数。

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

TERM に相当 期間 シェル変数。

タームキャップ ターミナル機能文字列。 見る ターミナル 管理.

USER に相当 user シェル変数。

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

ビジュアル デフォルトのフルスクリーンエディタへのパス名。 も参照してください 環境変数EDITOR 環境
変数と 実行-fg-エディター エディターコマンド。

onworks.netサービスを使用してオンラインでtcshを使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad




×
Advertisement
❤️ここでショッピング、予約、購入してください。料金はかかりません。これにより、サービスが無料で維持されます。