対話型利用のための改良点
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/12 05:34 UTC 版)
「C Shell」の記事における「対話型利用のための改良点」の解説
C shell の第二の設計目標は、対話型利用の改良だった。そのため、ユーザビリティや入力の高速性を追求したいくつかの新機能を導入している。必要な結果を得るのに打ち込まなければならないキーストローク数を減らすことで、高速性を実現している。特に重要なのは、ヒストリとその編集機構、エイリアス、ディレクトリスタック、チルダ記法、cdpath、ジョブコントロール、パスハッシングである。これら新機能は人気となり、多くが他のUnixシェルにも採用された。 ヒストリ 素早いキーストロークで以前に入力したコマンド行を呼び出して再実行することができる。例えば、感嘆符を2つ "!!" と入力すると、直前に入力したコマンドを再実行できる。他にも "!$" と入力すると直前のコマンド行の最後の引数に置換される。 編集機構 編集はヒストリ内のコマンドのテキストだけでなく、様々な置換が可能である。編集用作用素としては、単純な文字列検索/置換からファイルのパス名を構文解析して特定の部分を取り出すなどがある。 エイリアス ユーザーが定義した何らかの文字列の別名(エイリアス)を設定でき、その別名を打ち込むと C shell がそれをユーザー定義文字列に置換する。例えば "fgrep" コマンドのエイリアスとして "f" を設定しておくとキーストロークが少なくなって高速化でき、スクリプトを作るよりも簡単である。 ディレクトリスタック ディレクトリスタックは、カレントディレクトリをスタックにプッシュまたはポップでき、ファイルシステム内の複数個所で少ないキーストロークで行き来することができる。 チルダ記法 ホームディレクトリを "~" で記述でき、ホームからの相対パスでファイルを指定できる。 対話的ファイル名補完 Escキーを対話的に使用し、入力中のコマンド行の最後尾のファイル名を補完する可能性のある候補を示すことができる。 cdpath コマンド検索パス(環境変数のPATH)の記法で、cdコマンドを拡張するシェル変数。cdコマンドで指定されたディレクトリがカレントディレクトリにない場合、cdpathに指定されているディレクトリ群も調べる。 ジョブコントロール 1980年代、多くのユーザーは単純なキャラクタ端末を使っていた。shの場合、一度に1つのことしかできなかった。ウィンドウを別に開くということができなかったため、ファイルの編集を開始するには、それまで行っていたことを終了させるなどする必要があった。C shell のジョブコントロールはこの問題を解決するもので、Ctrl-Z を押下することで現在実行中のジョブをサスペンドし、新たな C shell のインスタンスを生成することができる。そして、fg コマンドで複数のジョブを切り換えることができる。アクティブなジョブはフォアグラウンドジョブと呼ぶ。それ以外のジョブはサスペンド状態かまたはバックグラウンド状態となる。 パスハッシング パスハッシングとは、実行可能ファイルの検索を高速化する機能である。PATHに示されたディレクトリを順に見ていくのではなく、C shell 内部に構築したハッシュテーブルから実行可能ファイルを探す。"rehash" コマンドはそのハッシュテーブルをリフレッシュするもので、新たに実行可能ファイルを作成した場合などに使用する。
※この「対話型利用のための改良点」の解説は、「C Shell」の解説の一部です。
「対話型利用のための改良点」を含む「C Shell」の記事については、「C Shell」の概要を参照ください。
- 対話型利用のための改良点のページへのリンク