シェルの本来の意味は「貝殻」や「殻」と云ったものです。 イメージしにくいかも知れませんが、シェルを「一番外側に在るもの」 と解釈してください。 UNIX でのシェルも計算機からみて一等外側に存在し、 人間との情報の遣取りをする窓口の約割りを担っています。 例えば、ファイル名を確認するときに ls コマンドを使いますが、 ユーザーがプロンプトで ls と打ってリターンキーを押すと、 シェルがその命令を受け取って、 ls コマンドを計算機の中から探してきて、 実行してくれるのです。
tcsh では、Emacs などのエディタのように入力位置を移動でき、すでに入力した 文字列に対して文字の挿入などの編集が可能です。 キー操作の一覧を以下に示します。
表記のルール 以下で,C-<文字> は コントロールキーを押したまま、<文字>キーを押すことを意味します。例えば、C-f はコントロールキーを押しながら f のキーを押すことです。
| カーソルを1つ進める | C-f, →(右カーソル) | 
| カーソルを1つ戻す | C-b, ←(左カーソル) | 
| カーソルを先頭に移動 | C-a | 
| カーソルを文字列の最後に移動 | C-e | 
| カーソルの文字を削除 | C-d, Delete キー | 
| カーソルの一つ前の文字を削除 | C-h, BackSpace キー | 
| カーソルより後ろに続く文字列を全て削除 | C-k | 
| 画面を再描画 | C-l | 
ヒストリとは、コマンドの履歴です。history という内部コマンドを実行すると、 最近実行したコマンドが以下のように表示されます。 (内部コマンドとは、シェルの中に組み込まれたコマンドのことで、 ls コマンドの様に一つの独立したコマンドではありません。)
% history                                                                 
     1  15:34   man tcsh
     2  15:35   history
     3  15:36   cd
     4  15:36   pwd
     5  15:36   ls
     6  15:36   cd public_html
     7  15:37   ls
     8  15:37   cd
     9  16:00   history
tcsh では、これらのヒストリをたどることにより、 以前と同じ文字列を入力するときの手間を省くことができます。 当然、現在表示されている文字列を編集することも可能です。
| ヒストリの一つ前に戻る | C-p, ↑(上カーソル) | 
| ヒストリの一つ先に進む | C-n, ↓(下カーソル) | 
% cc keyboard.c -o keyboard
% ls -l
-rw-r--r--   1 hsv98068 others        248 Apr 17 14:35 keyboard.c     
-rwxr-xr-x   1 hsv98068 others       2977 Apr 17 14:35 keyboard     
% cc keyboard.c -o keyboard           <-- 前々回の入力     
    --- C-p を 2 回入力 ---     
% ls -l                               <-- 前回の入力     
    --- C-n を 1 回入力 ---
 
tcsh ではファイル名の一部を入力するだけで、途中までの入力にあうファイルの一覧を表示したり、残りの入力を補完してくれる機能があります。 例えば program といったディレクトリ名を入力しようとして、うっかり入力するディレクトリ名を忘れた場合、次の操作で一覧を表示できます。
% set ignoreeof <-- 間違って C-d で logout しないように禁止 % ls Mail Wnn6 program public_html paint.c % cd p <-- p まで打って C-d を押す program/ public_html/ paint.c % cd pr <-- pr まで打てば候補は program に確定する。ここで Tab (or C-i) % cd program
このように補完機能を使って、ファイル名やディレクトリ名を入力すれば、タイプする量を減らして速く入力できるだけでなく、タイプミスをすることが無くなります。積極的に使うようにして下さい。
(注) tcsh で補完候補を表示したときの program/ などに付いている "/" は、 候補がディレクトリであることを表しています。
| ファイル名(ディレクトリ名)の補完候補一覧を表示 | C-d | 
| ファイル名(ディレクトリ名)の補完 | C-i, Tabキー |