探したいファイル形式によって幾つかの方法がある。最初に,ワイルドカードの扱い方も知っておきたい。次の例は,使用頻度が高いと思われるものだ。
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に設定されているディレクトリから実行コマンドを探し出せる。
関連Tips
パス設定を確認したい
パスを追加したい〜.bashrc編〜
「hoge」から始まるファイルを検索したい
探しているファイルが見つからない
Copyright © ITmedia, Inc. All Rights Reserved.