ある日付よりも古いファイルの一覧を取得する(find)
昨年以前に作成されたファイルの一覧を取得する方法を調べたのでメモしておきます。
findコマンドの-newer fileというオプションを利用します。
引数で渡されたfileの日付以降に修正されたファイルを見つけるオプションです。
今回は古い方を探したいので、!を使ってこの条件を否定します。
まずは、比較用のファイル、20100101を作成します。
# touch 20100101
日付変更前の情報
# ll -rw-r--r-- 1 root root 0 9月 8 10:37 20100101
日付変更実施
# touch -t 201001010000.00 20100101
変更後の情報
# ll -rw-r--r-- 1 root root 0 1月 1 2010 20100101
比較用ファイルができたので、実際に2009年以前に作られたファイルを検索します。
# find . -type f ! -newer 20100101 -printf "%t\t%s\n" Thu Nov 13 09:57:18 2008 1597 Thu Nov 13 09:57:19 2008 24576 Thu Nov 13 09:57:10 2008 11242 Thu Nov 13 09:57:18 2008 15360 Thu Nov 13 09:57:10 2008 20386 Thu Nov 13 10:01:50 2008 104857 Mon Sep 28 10:31:02 2009 345654 Fri Sep 25 16:25:33 2009 345654 Fri Sep 25 11:32:43 2009 345654 Mon Sep 28 11:51:02 2009 589878
printfで最終更新日とファイルサイズを表示させています。
とりあえずやりたかったことはこれで実現できたかな…。
この後、サイズの合計を出す作業もあるのですが、それはローカルに持ってきてエクセルで計算しようかと思っています。