Files

保持日誌文件大小固定而不使用 logrotate

  • November 6, 2018

有沒有辦法保持日誌文件的文件大小固定,而不用新的空文件旋轉它並刪除(或歸檔)舊文件。例如,如果我將日誌文件的最大大小設置為 1MB,在文件大小增加超過該限制後,它將被自動箝制,文本添加到“尾部”並彈出文本的最舊部分以保持文件大小為 1MB .

您可以編寫一個小 bash 腳本來執行此操作。tail -c只需使用並覆蓋文件將文件拖尾到某個字節數。

來自man tail

-c, --bytes=N
             output the last N bytes; alternatively, use +N to  output  bytes
             starting with the Nth of each file

  If  the  first  character of N (the number of bytes or lines) is a `+',
  print beginning with the Nth item from the start of each  file,  other‐
  wise, print the last N items in the file.  N may have a multiplier suf‐
  fix:  b  512,  kB  1000,  K  1024,  MB  1000*1000,  M   1024*1024,   GB
  1000*1000*1000, G 1024*1024*1024, and so on for T, P, E, Z, Y.

引用自:https://unix.stackexchange.com/questions/439