私は多くのファイル(例えば、毎年の毎日のログ)を含むディレクトリを持っています。 2011年22月22日より前に作成されたすべてのファイルを削除したいと思います。どうすればいいですか?find
execを使用する必要がありますか-rm
? kshを使用しています。
ベストアンサー1
を使用することは、find
まだファイルを削除するための好ましい方法です。バラよりhttp://mywiki.wooledge.org/UsingFindもっと学ぶ。
1つの方法は、タイムスタンプを含むファイルを作成することです。例えば
touch -t 201311220000 /tmp/timestamp
find
次に、タイムスタンプに一致するGNUファイルを削除します(現在のディレクトリにあると仮定)。例:
find . -type f ! -newer /tmp/timestamp -delete
または非GNUルックアップ
find . -type f ! -newer /tmp/timestamp -exec rm {} \;