UNIXのコマンドは、コマンド名、オプション、引数という形式で入力します。
オプションは、コマンドの基本機能に付ける付加機能を指定するものです。各コマンドによって、指定できるオプションは決まっていて、指定できないコマンドや、複数指定できるコマンドもあります。通常は、「-」(ハイフン)に続く1文字の英数字で指定します。
Linuxでは、オプションを2個のハイフンに続けて英単語を入力できるものがあります。この例では、「--mode=755」と指定しても同じ結果となります
引数は、コマンドの実行対象を指定するもので、コマンドによっては、指定できないものや、複数指定できるものもあります。
さて、あるコマンドの引数として、10個のファイル名を指定したい場合を考えてみてください。10個のファイル名をひとつずつ、すべて手入力していたのでは、とても非効率的ですね。この時、対象とするすべてのファイル名が一定のルールにしたがっていて、逆にそれ以外のファイル名が、そのルールにしたがっていない場合には、ワイルドカードを有効に使用することができます。例えば、対象とする10個のファイル名がすべて「fl」で始まっていて、それ以外のファイル名には「fl」で始まるものはないとした場合、「fl*」という表記で、10個すべてのファイルを指定することができます。
これは、「*」(アスタリスク)が0文字以上の任意の文字列を表すからです。0文字以上というのは、何もなくてもよいということで、「fl*」は「fl」も含むということです。アスタリスクの他に、任意の一文字を示す「?」(クエスチョンマーク)を使用することもでき、アスタリスクやクエスチョンマークを「ワイルドカード」といいます。
また、「[ ]」内にいくつかの文字を指定すると、その中の任意の1文字を表します。例えば「[ABC]」とすると、「A」か「B」か「C」のうちのどれか1文字という指定となります。
$ ls
fa001 fl001 fl003 fl005 fl007 fl009 fx001 x001
fa002 fl002 fl004 fl006 fl008 fl010 fx002 x002
すべてのファイル$ ls fa*
fa001 fa002
ファイル名が「fa」から始まるすべてのファイル$ ls f?00*
fa001 fa002 fl001 fl002 fl003 fl004 fl005 fl006
fl007 fl008 fl009 fx001 fx002
ファイル名が「f」から始まり、3文字目と4文字目が「0」のすべてのファイル$ ls f[ax]*
fa001 fa002 fx001 fx002
ファイル名が「f」から始まり、2文字目が「a」または「x」のすべてのファイル
本コンテンツは「UNIXコマンド辞典 ビギナー編」(2003年)を元にWeb用に再編集したものです
All Contents copyright © 2003-2009 Odyssey Communications Inc., Shoeisha Co., Ltd.