Linux/特定の日付以前の古いファイルを削除したり移動する方法
findとxargsをうまく使うとコマンド一発で対処できます。
ファイル名に.txtがついて、最後に修正されたのが50日より前のものを、
aaaというディレクトリに移動させる方法です。
(例1) find ./ -mtime +50 -name "*.txt" | xargs mv --target-directory=./aaa
ファイル名に.txtがついて、最後に修正されたのが50日より前のものを、
削除する方法です。
(例2) find ./ -mtime +50 -name "*.txt" | xargs rm -f
(解説)
xargsは、標準入力の引数を引き込み続くコマンドを実行するコマンドです。
findは、オプションでファイル名を検索できます。
ちなみに、+50を-50にすると、
50日以内の新しいファイルを削除したり移動できたりします。
●危険なコマンドでもあるので、実行前には
lsコマンドでリストを確認してから実行しましょう。
find ./ -mtime -50 -name "*.txt" | ls
このページのURL: