探したいファイル形式によって幾つかの方法がある。最初に、ワイルドカードの扱い方も知っておきたい。次の例は、使用頻度が高いと思われるものだ。
hogehoge hogehoge* *hogehoge*
*=すべての文字列に相当する、?=任意の1文字に相当する
1.「ls」コマンドによる方法
ディレクトリ内のリスト表示をする。
$ ls *hogehoge*
ここでの例では、「hogehoge」が含まれるファイル一覧が表示される。
2.「find」コマンドによる方法
特定のディレクトリ下のファイル検索を行う。
$ find ./ -name hogehoge* $ find ./* -name hogehoge* # find /* -name hogehoge*
ここでの例は、上から順に「カレントディレクトリの頭からhogehogeが含まれるファイルを表示」「カレントディレクトリ下に頭からhogehogeが含まれるファイルを表示」「ルート階層下すべてから頭からhogehogeが含まれるファイルを表示」になる。
3.「locate(slocate)」コマンドによる方法
ファイル名データベースからパターンに合うものを表示する。
$ locate hogehoge
「locateコマンドのファイルデータベース更新を停止させたい」Tipsで紹介しているように、多くのLinuxディストリビューションでは、標準で毎朝4時にファイル名データベースが更新される。slocateによる更新が行われている場合、上記の方法でfindよりも高速にファイル名検索が行える。
4.「which」コマンドによる方法
実行コマンドを探す。
$ which hogehoge
実行できるパーミッションが設定されていて、PATHに設定されているディレクトリから実行コマンドを探し出せる。
Copyright © ITmedia, Inc. All Rights Reserved.