• 締切済み

1週間経過したファイルを削除 かつ最新のファイルは残しておきたい

こんばんは、初投稿になります。 現在Linux系サーバのファイル管理を行っているのですが /tmpディレクトリに定期的ファイルが作成される設定にしております。 そこで1週間以上経過したファイルは削除し、かつ最新のファイルは 1つは残すような仕組みにしたいのですが…cronに登録し find /tmp -mtime +7 -type f -exec rm -fr {} \; をしてみたのですが、10日更新されなかった場合は全てのファイルが消えてしまいます。最新のファイルだけは残せる方法をご存知でしたら 教えてください。 よろしくお願いします。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

$付け忘れました。 ! -name "$NewestFile"

potaro3
質問者

お礼

notnotさん、ありがとうございます。 なるほど ! ですか参考にさせて頂きます。

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

否定 ! を使えばいいでしょう。 NewestFile=`ls -t1 /tmp/* | head -1` find /tmp -mtime +7 -type f ! -name "NewestFile" -exec rm -fr {} \;

  • shikaruni
  • ベストアンサー率20% (19/95)
回答No.1

perlか何かで、ご希望通りにコーディングして、それを定期的にcron?で走らせればOK。

関連するQ&A