モヒカンメモ

髪色が定期的に変わることに定評のある(比較的)若者Webエンジニアの備忘録

指定したサイズ以上のファイルを見つける

どこにあるか分からないけどデカいファイルがあって悪さしていそうなので探したいときなどに、 find コマンドの size オプションが便利。

findコマンドにsizeオプションをつけるとファイルサイズで検索できる

findコマンド

ディレクトリやファイルを探せる便利なLinuxコマンド。

atmarkit.itmedia.co.jp

findコマンドのsizeオプション

容量の検索オプション。 例えば100MB以上のサイズのものを検索したければ -size +100M のような感じ。

$ man find
...
-size n[ckMGTP]
        True if the file's size, rounded up, in 512-byte blocks is n.  If n is followed by a c, then the primary is true if the file's size is n bytes (characters).  Similarly if n is followed by a scale indicator then the file's size is compared to n scaled as:

        k       kilobytes (1024 bytes)
        M       megabytes (1024 kilobytes)
        G       gigabytes (1024 megabytes)
        T       terabytes (1024 gigabytes)
        P       petabytes (1024 terabytes)

探してみる

前提:

$ ls -lh
total 614400
-rw-r--r--  1 pinkumohikan  staff   100M  8 15 06:18 100MB.txt
-rw-r--r--  1 pinkumohikan  staff   101M  8 15 06:18 101MB.txt
-rw-r--r--  1 pinkumohikan  staff    99M  8 15 06:18 99MB.txt

※ 各ファイルは dd if=/dev/zero of=100MB.txt bs=1M count=100 のようにカッチリ作ったもの

(1) 指定した容量のファイルを探す

$ find . -type f -size 100M
./100MB.txt

(2) 指定した容量よりも小さいファイルを探す

$ find . -type f -size -100M
./99MB.txt

(3) 指定した容量よりも大きいファイルを探す

$ find . -type f -size +100M
./101MB.txt