2012-11-15 30 views
5

Günlük dosyalarını yeniden adlandıracak ve arşivleyecek bir komut dosyası yazmaya çalışıyorum ancak bunu çözemiyorum. İşte nasıl çalışması gerektiği ile ilgili bir örnek: error_log adlı bir dosyanız varsa ve senaryonuzu ilk kez çalıştırıyorsanız, error_log dosyasını error_log.1'a yeniden adlandırıp error_log.1 gzip ile arşivleyin. Komut dosyanızı ikinci kez çalıştırdığınızda iki dosya vardır: error_log ve error_log.1.gz, şimdi error_log.1.gz'u error_log.2.gz'a yeniden adlandırmalısınız; error_log - error_log.1 ve bir kez daha ile gzip ile error_log.1.gz arşivleyin.Günlük dosyalarını arşivlemek için Bash komut dosyası

cevap

7

Aradığınızı, logrotate olarak adlandırın, istediğiniz gibi döndürmek için temel bir Unix yönetim komutu.

/var/log/apache/error_log { 
     daily 
     rotate 90  # keep only 90 logs 
     copytruncate # don't stop apps, but copy log 
     compress  # gzip log in *.gz 
} 
:

basit yapılandırma dosyasının man 8 logrotate

Örnek gör

İlgili konular