ディレクトリがたくさんあるときに、空のディレクトリだけを一覧したい。
find . -type d -empty
Rsyncが途中で終わってしまったディレクトリや、夜間バッチのログが出力されてない。など。ミスを探すときに空っぽのフォルダを探すのに便利。
やってみた
$ find . -type d -empty ./0007/data ./0009/data ./0010 ./0011/data/resources ./0012/data/resources ./0013/data/resources ./0016/data/resources ./0017/AUDIO_TS ./0020/AUDIO_TS ./0021/AUDIO_TS ./0022/AUDIO_TS ./0023/AUDIO_TS ./0024/AUDIO_TS ./0025/AUDIO_TS ./0026/AUDIO_TS ./0027/AUDIO_TS ./0028/AUDIO_TS ./0030
実際のフォルダ構成はこんな感じ
. |-- 0001 | |-- data | `-- index.htm |-- 0002 | |-- data | `-- index.htm |-- 0003 | |-- data | `-- index.htm |-- 0004 | |-- data | `-- index.htm |-- 0005 | |-- data | `-- index.htm |-- 0006 | |-- data | `-- index.htm |-- 0007 | |-- data | `-- index.htm |-- 0008 | |-- data | `-- index.htm |-- 0009 | |-- data | `-- index.htm |-- 0010 |-- 0011 | |-- data | `-- index.htm |-- 0012 | |-- data | `-- index.htm |-- 0013 | |-- data | `-- index.htm |-- 0014 | |-- data | `-- index.htm |-- 0015 | |-- data | `-- index.htm |-- 0016 | |-- data | `-- index.htm |-- 0017 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0018 | |-- data | `-- index.htm |-- 0019 | |-- data | `-- index.htm |-- 0020 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0021 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0022 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0023 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0024 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0025 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0026 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0027 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0028 | |-- AUDIO_TS | `-- VIDEO_TS |-- 0029 (以下略
といわけで、空のディレクトリがちゃんと出てくることがわかった。
あまり深い階層に興味がないときは
find . -maxdepth 2
で階層を制限できる。