サーバーの中にあるファイルを探したいときにファイルがどこのディレクトリにあるのかわからないときにファイルの場所を探すコマンドについて調べてみました。
find . -name "example.file"
上記で基本的には探すことができますが”find”コマンドは、現在のディレクトリから再帰的に検索を行うため、fileが別のディレクトリに存在している場合だと検索に引っかかりません。
そういった時の解決法としては全体を検索するためにファイルシステム上のルートディレクトリ(通常は/)に移動します。
以下のコマンド(Unix/Linux/macOSの場合):
cd /
これによって、ルートディレクトリに移動したのでここで”find”コマンドから全体を検索し、目的のfileを見つけることができるはずです。
ただし、検索には時間がかかる場合がありますし、ファイルが非常に多い場合はパフォーマンスの問題が発生する可能性もあります。
※補足
ルートディレクトリ(“/”)について調べてみました。
“/”は、ファイルシステム上のルートディレクトリを表します。
ルートディレクトリは、ファイルシステムの階層構造の最上位に位置し、他のすべてのディレクトリやファイルはルートディレクトリ以下に存在します。
ルートディレクトリは、/というパスで表されます。
サーバーにログインしたときにpwdで位置を見てルートディレクトリじゃなかったらcdコマンドで移動すれば全体から検索をかけられるのでファイルを探したいときに便利かもしれません。