- ベストアンサー
Solaris5.6 の bshで3が月前の日付を取得するには?
毎日1回ファイルのリストを取得しているのですが、 それを月1回ある特定の時間起動の時に、3ヶ月前の ファイルリストは削除したいと考えいます。 ファイルリストは以下の形式で保存してます。 filelist.YYMMDD(例:filelist.030208) 問題は、3ヶ月前という日付を "date"コマンドで取得 する方法がわからないという点です。 TZ=JST+15 export TZ ↑このへんだと日にち指定は出来ますが、月は指定 できなかったのです。 bshで組んでいます。 何か良い策があったら教えて下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1の方のご回答されているとおりで良いと思いますが、findによる削除のやりかたとしては、#1の方の書かれているものの他に $ find /path/to/log_dir -name 'filelist.*' -mtime +90 -exec rm {} \; という書き方もあります。
その他の回答 (1)
- astronaut
- ベストアンサー率58% (303/516)
回答No.1
古いログを消したいという動機なら,そんな面倒なことをしなくても,find で90日以上更新されていないファイルを検索して削除すればいいのではないでしょうか. $ rm -f `find /path/to/log_dir -name "filelist.*" -mtime +90`
質問者
お礼
おっしゃる通りです。その使い方忘れてました。。。 ありがとうございます。
お礼
ありがとうございます。findコマンドバージョンを 使わせて頂きます。