古いファイルを削除したいのですが。。。

OKWave

2007-09-27 13:00

古いファイルを削除したいのですが。。。

こんにちわ。

findコマンドを使って、あるディレクトリにどんどんできるファイルの古くなったものを削除したいのです。
例えば、7日以上更新がないものを削除したく、

# find /hoge/backup -mtime +7 -a -type f -exec rm -f {} \;

というコマンドを実行してみましたが、結果は、削除されず残ったままで、しかも一部のファイルが元々古い日付だったものが、実行日時でタイムスタンプが書き変わってしまってます。

シェルはbashでもcshで試しても同じでした。
どうすればよいかご教示お願いできますでしょうか?

良回答

>find /hoge/backup -mtime +7 -a -type f -exec rm -f \{\} \;

ではないでしょうか?(「{}」もエスケープする。)

ちなみにfindのバージョンによっては(FreeBSDのベースシステムのfindも入ります)、

>find /hoge/backup -mtime +7 -a -type f -delete

とすることも出来ます。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]