findコマンド
findコマンド
ディレクトリツリーからファイルを探す
find 検索開始ディレクトリ 検索条件 アクション
検索条件に何も入力しなかった場合は全てのファイルとディレクトリが対象になる
現在のディレクトリを起点としてfile-1.txt を探してパスを表示→ $ find . -name file-1.txt -print
アクションを省略したら、-print が指定されたとみなされる
ファイル名で探す= -name , -iname
nameは大文字小文字を区別するが、inameは区別しない
ワイルドカードとして、*と?が使えるが、必ずシングルクォートで囲むこと
メタ文字がパス名展開とみなされてしまうのを防ぐ
ファイルの種類で探す= -type
複数の検索条件の指定= -a
$find . -type f -a -name '*.txt' -print
検索条件1=ファイル、&、検索条件2=名前が.txtで終わる、を実行してパスを表示
locateコマンド
findよりも高速に検索できる
初期状態ではインストールされていないこともある
fileのパスを保存したDBを用意しておき、そこから探してくる
1日1回の更新のためラグがあることに注意する
locate オプション 検索パターン
-i 大文字小文字を区別しない
-b ファイル名だけを検索
-A or --all アンド検索