いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

findコマンドで複数の場所から検索する

関連記事

GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ · GitHub

概要

以下、自分用のメモです。

大した話では無いのですが、周り見ると以外と知らない人がとても多かったので、ついでにメモとして。

find コマンドを使う際に以下のようにしている方が結構いらっしゃいます。

# 作業上 ~/tmp/xx{1..10}` と `/tmp/xx{1..10}` と `/var/log/xx{1..10}` の下から特定のファイルを検索しないといけないとする

$ find ~/tmp/xx{1..10} -name "nanika-no-file-pattern"
$ find /tmp/xx{1..10} -name "nanika-no-file-pattern"
$ find /var/log/xx{1..10} -name "nanika-no-file-pattern"

起点のディレクトリが異なるので、その個数分実行しているってことですね。で、出力された内容を自分でマージしてる人とか多いです。

(人によっては面倒なので毎回ルートディレクトリから検索している人もよく見かけます。時間かかるので私はあまりしませんが)

実は、findコマンドは検索対象ディレクトリを複数指定できますので、以下でも良いです。

$ find ~/tmp/xx{1..10} /tmp/xx{1..10} /var/log/xx{1..10} -name "nanika-no-file-pattern"

findコマンドのman(1)を見ると書式は以下のようになっています。

find [-H] [-L] [-P] [-D debugopts] [-Olevel] [starting-point...] [expression]

starting-pont... となっているので複数指定できるということですね。

参考情報

linuxjm.sourceforge.io


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。