コマンド名、ファイル名の補完について

コマンド名の補完

MSDOSのCUIが面倒だった記憶のある人も多いと思いますが。Linuxの場合はコマンド名やファイル名の補完ができるので事情が違います。

たとえば、ktermのコマンドラインで namazu というコマンドを入力するときも nama まで入力したところで Tabキーを押すと残りを補完して namazu にしてくれます。

それでは na だけ入力したところで Tab キーを押すとどうなるでしょうか。ブザーが鳴って補完は起きないはずです。そのときはもう1回 Tab キーを押すと、先頭に na のつくコマンドの一覧 namazu、name-client、namei、nature が現れます。そこで maを追加し、nama Tab と入力すると完全なコマンド名に補完されます。

ファイル名の補完

名前の補完はファイル名についても可能です。file1ban、file2ban、file3ban と言うファイルがある場合、ls fi までで Tab キーを押すと、ブザーがなって補完が起きません

そこで、Tab キーを2回押すと file1ban、file2ban、file3ban のリストが表示されます。ls file2 まで入力を完成させて Tab キーを押すと。残りが補完され、ls file2ban となります。

Linuxを使うときのCUIの使いやすさは、補完機能があるため、コマンド名やファイル名を完全に記憶する必要がないと言うところにあります。

ワイルドカードによる補完

ディレクトリーの中にあるファイルリストすべてを表示するには ls と入力するだけです。

$ ls

それではファイルの名前の冒頭部分が file で始まるファイルをすべて表示させたいときはどうすればいいのでしょうか。そのような場合はワイルドカード * を用いて次のように入力します。

$ ls file*

また、.txt という拡張子を持つ文書ファイルだけを表示するには次のようにします。

$ ls *.txt

このように、ターミナルエミュレータ上でファイルを操作するときは、Tab 補完やワイルドカードを利用することで操作が非常に楽になります。