- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シェルスクリプトで古いファイルの自動削除をするには?)
シェルスクリプトで古いファイルの自動削除方法とは?
このQ&Aのポイント
- UNIXで特定のディレクトリ内のファイルについて、システム日付より3日前のタイムスタンプを持つファイルを削除するためのシェルスクリプトの作成方法を解説します。
- 削除対象のファイルは複数存在し、サイズは0byteから数百Mbyteまでの可能性があります。ファイル名は不定です。シェルスクリプトはBシェルまたはCシェルを使用します。
- lsコマンドのタイムスタンプの出力形式や既存のコマンドを試したがうまくいかなかったため、解決策を模索しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
-type fも必要でした。 find somedir -type f -mtime +3 -exec rm {} \; でいきましょう。 とりあえず、テストは find somedir -type f -mtime +3 -print でちゃんと該当するファイルが表示されるれば-exec rm {} \;にしても大丈夫。 日付まで確認したければ、 find mydir -type f -mtime +3 -exec ls -la {} \; 詳しくは、find(1)のmanをどうぞ。
その他の回答 (1)
- millionwalker
- ベストアンサー率46% (22/47)
回答No.1
なんでスクリプトが必要かな。 find directory -mtime +3 -exec rm {} \;
質問者
お礼
>なんでスクリプトが必要かな。 その通りですね。find っていろいろできるんですねー
お礼
ありがとうございます。 findで抽出可能とは知りませんでした。 なりほどぉ。-mtime ですか!! ありがとうございました。大変助かりました。