1. 程式人生 > >Shell中按月打包日誌小指令碼

Shell中按月打包日誌小指令碼

Linux中的各種Web,資料庫,各種服務經常會按日產生大量日誌。運維的時候經常要做的就是按月來壓縮、歸檔。

UserWeb.log.2011-1-1
UserWeb.log.2011-1-2
...
UserWeb.log.2011-2-1
UserWeb.log.2011-2-2
...
UserWeb.log.2011-3-1
UserWeb.log.2011-3-2
...

UserWeb.log.2012-1-1
UserWeb.log.2012-2-1
UserWeb.log.2012-3-1

UserWeb.log.2013-1-1
UserWeb.log.2013-2-1
UserWeb.log.2013-3-1
...........

像上面的資料格式,可以寫成shell指令碼放到cronb每月自動處理,也可以用一條語句自動處理

#!/bin/bash

for n in $(seq -w 2011 2018)
do
    tar -cvzf UserWeb.log.${n}.tar.gz UserWeb.log.${n}-{1..12}-{1..31} 
done