1
我有一個目錄有以下格式的文件:UNIX Shell腳本存檔比上月文件
SLS20160112.001 (20160112 stands for YYYYMMDD)
我希望歸檔所有比上月文件,例如:
SLS20160201.001
SLS20150201.001
SLS20160107.001
SLS 20160130.001
對於上面列出的文件,我會歸檔SLS20160107.001和SLS20160130.001,因爲它從文件名戳1月份。
對於SLS20160201.001它仍然存在,因爲我只想歸檔上個月的文件。我只能從文件名提取日期,而不是日期或adate。
我目前的邏輯是循環遍歷所有文件,然後獲取以前的月份文件,然後管出文件名並將其tar。但不知道該怎麼做。
for file in SLS*; do
f="${file%.*}"
GET PREVIOUS MONTH FILES AND THEN ECHO
done | tar cvzf SlSBackup_<PREVIOUS_MONTH>.TAR.GZ -T-
使用日誌輪播,而不是爲這個自制腳本。 –
這個問題屬於Unix和Linux,因爲日誌旋轉是一個標準的* nix函數,具有現有的實用程序。 –
@CodeGnome我也可以使用這個自制腳本來處理其他銷售文件,而不僅僅是日誌。 – hades