Bir UNIX işleminden çıktı almak istiyorum ancak maksimum dosya boyutunu sınırlamak ve/veya yeni bir dosyaya döndürmek istiyorum.Tişört (veya eşdeğer) kullanın, ancak maksimum dosya boyutunu sınırlandırın veya yeni dosyaya dönün
Logrotate'ı gördüm, ancak gerçek zamanlı çalışmıyor. Anladığım kadarıyla paralel çalışan bir "temizlik" işi.
Doğru çözüm nedir? Sanırım bunu yapmak için küçük bir senaryo yazacağım, ancak mevcut metin araçlarıyla basit bir yol olduğunu umuyorum.
Düşünün: o doldurur gibi ... log/my_program_log000001 ve yeni bir günlüğünü başlatmak için yeniden adlandırılmış Sonra log/my_program_log
:
my_program | tee --max-bytes 100000 log/my_program_log
Daima gibi en son günlük dosyasını yazma ... verir misiniz/my_program_log.
Bah ... Bash'deki (ve diğer bazı kabuklarda)>() operatörünü unuttum. Çok seyrek kullanırım. Seninki en özlü cevaptır. – kevinarpe