お品書き
書き直し中…
とりあえず、中へどうぞ
↓↓↓
スポンサーリンク

【覚書】空のフォルダを検索して削除する【Linux/debian】

PC/ネット

空のフォルダ(ディレクトリ)を検索する

# find /disk2/.recycle/ -empty -type d

findコマンドのオプション

-nameワイルドカードを使用して、ファイルやディレクトリ名の一部のみ指定した検索ができる
-atime任意の日数にアクセスされたファイルやディレクトリを検索する
-mtime任意の日数に更新されたファイルやディレクトリを検索する
-amin任意の分数にアクセスされたファイルやディレクトリを検索する
-mmin任意の分数に更新されたファイルやディレクトリを検索する
-anewer任意のファイルの更新日時よりも後にアクセスしたファイルやディレクトリを検索する
-newer任意のファイルの更新日時よりも後に変更したファイルやディレクトリを検索する
-emptyファイル容量が0のファイルやディレクトリを対象とし検索する
-sizeファイル容量を指定し検索する
-type fファイルのみを対象とし検索する
-type dディレクトリを対象とし検索する
-permパーミッションで検索する
-and複数の条件を使って、すべての条件に当てはまるファイルやディレクトリを検索する
-or複数の条件を使って、いずれかの条件に当てはまるファイルやディレクトリを検索する
-not条件に当てはまらないファイルやディレクトリを検索する
-exec検索結果に対してコマンドを実行する

空のディレクトリを検索して削除する

# find /disk2/.recycle/ -empty -type d -print0 | xargs --null rmdir -p

rmdirコマンドのオプション

-p親ディレクトリも削除する(指定しないと空のフォルダの下に空のフォルダがある場合に、最下層のフォルダのみ削除される)
--ignore-fail-on-non-emptyディレクトリが空ではないときに出るエラーを表示しない
-v(--verbose)結果を表示
※「rmdir」コマンドは「rm」コマンドと違って、あくまでディレクトリが削除対象なので、ファイルがある場合は削除されないので、rmより安全

コメント