1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

findコマンドで指定した期間内に更新されたファイルをサイズ順で並び替える

Posted at

使いみち

  • サーバーの調査時に、ある期間内でもっともサイズの大きいファイルを見たい
  • ex. 急にサーバー容量が増えたけど、どのファイルが原因なのかを調査する等

コマンド

find . -type f -newermt "2020-08-31 00:00:00" -a ! -newermt "2020-09-05 23:59:59" -printf "%p %s" | sort -k 2,2

解説

  • -newermt
    • 指定した日付より新しいもの(>)。ここでは2020年8月31日の0時ジャストより先の日付になる
  • -a ! -newermt
    • 上記の否定になる(<=)。ここでは、2020年9月5日の23時59分59秒以下の日付になる
  • 2つを合わせると以下のように期間指定したことになる
    • 2020年8月31日0時0分0秒 < ファイルの最終更新日付 <= 2020年9月5日23時59分59秒
  • -printf "%p %s"
    • findで見つけたファイルの名前(フルパス)とファイルのサイズを出力する
  • sort -k 2,2
    • -k [開始位置],[終了位置]でソートのキーを指定できる
    • ここでは2番目のサイズのみをキーとするよう指定している
    • ※findの結果を「ファイル名 ファイルサイズ」のみにしていることに注意

参考

[Linux] findコマンドで指定した日付の範囲に更新されたファイルを検索する
逆引きUNIXコマンド/findに日時を指定し該当するファイルを検索する
findで具体的な日付、時間で検索するnewerXYオプション
sortコマンドについて詳しくまとめました 【Linuxコマンド集】
sortコマンド(テキストファイルをソートする)

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?