1. ホーム
  2. bash

[解決済み] Unixでシェルスクリプトを使って10日以上前のファイルを削除する [重複]。

2022-04-28 13:16:41

質問

私はシェルスクリプトの初心者です、どなたか助けてください。あるフォルダのスクリプトを現在の日付から10日前にさかのぼって削除したいのです。 スクリプトは以下のようなものです。

2012.11.21.09_33_52.script
2012.11.21.09_33_56.script
2012.11.21.09_33_59.script

スクリプトはCrontabで10日ごとに実行されるので、現在の日付が必要なのです。

どのように解決するのですか?

find は、この種のタスクのための一般的なツールです。

find ./my_dir -mtime +10 -type f -delete

説明

  • ./my_dir あなたのディレクトリ(あなたのものに置き換えてください)
  • -mtime +10 10日以上経過したもの
  • -type f ファイルのみ
  • -delete 当たり前か をテストするために削除してください。 find フィルタを実行する前に

また、以下の点に注意してください。 ./my_dir が存在するのは、悪い予感を避けるためです!