導入
ディレクトリが深くなると「あのファイルどこだっけ?」が起こります。find は指定した場所より下を再帰的にたどって、条件に合うファイルを探し出します。サーバー全体から特定の設定ファイルやログを探すときの必需品です。
説明
find 場所 で、その場所より下にあるものをすべて列挙します。.(今いる場所)を起点にするのが基本です。
find .
-name で名前による絞り込みができます。*(任意の文字列)を使うと拡張子でまとめて探せます。
find . -name "*.sh"
-type で種類を絞れます。f はファイル、d はディレクトリです。
find . -type d
条件は組み合わせられます。次は「.md で終わるファイルだけ」を探します。
find . -name "*.md" -type f
やってみよう
find . で全体を眺めてから、find . -name "*.js" で JavaScript ファイルだけに絞り込めることを確かめましょう。find . -type d でディレクトリだけを一覧する動きも見てください。
演習
今いる場所より下から、拡張子が .sh のファイルをすべて探し出してください。
ヒント1を見る
名前の条件は -name、拡張子は * でまとめます。find . -name "*.sh"
ヒント2を見る
パターンはクォートで囲むと安全です("*.sh")。