Linux中使用定時任務每週定時清理45天以前日誌

2022-04-04 18:53:45 字數 1015 閱讀 3660

如題所示,生產伺服器每天會產生很大的日誌檔案,為了不使硬碟被日誌檔案塞滿,因此需要定期清理日誌檔案。這時我們可以寫乙個shell指令碼用來清理某個路徑下45天以前的日誌,然後再設定乙個定時任務每週定時執行這個指令碼即可

(1)清理某個路徑下的日誌指令碼deloldlogs.sh:

[root@prx01cleanlog]#vim/usr/local/cleanlog/deloldlogs.sh#!/bin/sh

#刪除輸入路徑下的修改時間在45天以前的日誌檔案

find$1-mtime+45-name"*log*"-execrm-f{}\;這段**不難理解,就是清理引數1所在的路徑下的修改時間在45天以前的日誌檔案

(2)指定清理哪些路徑的日誌的指令碼del_all_oldlogs.sh:

[root@prx01cleanlog]#vim/usr/local/cleanlog/del_all_oldlogs.sh#!/bin/bash

/usr/local/cleanlog/deloldlogs.sh"/home/usr/ewp/logs"

/usr/local/cleanlog/deloldlogs.sh"/home/usr/h5/logs"

/usr/local/cleanlog/deloldlogs.sh"/home/usr/payment/logs"(3)給指令碼新增執行許可權:

[root@prx01cleanlog]#chmoda+x/usr/local/cleanlog/del*.sh(4)新增定時任務:

[root@prx01cron]#vim/var/spool/cron/root新增以下內容:

100**6/usr/local/cleanlog/del_all_oldlogs.sh注:

為了防止出現許可權不夠的情況,因此這裡設定了乙個root使用者的定時任務

這句**的意思是:在每週6的0:10執行/usr/local/cleanlog/del_all_oldlogs.sh 這個指令碼

(5)檢視定時任務:

[root@app05logs]#crontab-l

Linux中使用定時任務每週定時清理45天以前日誌

如題所示,生產伺服器每天會產生很大的日誌檔案,為了不使硬碟被日誌檔案塞滿,因此需要定期清理日誌檔案。這時我們可以寫乙個shell指令碼用來清理某個路徑下45天以前的日誌,然後再設定乙個定時任務每週定時執行這個指令碼即可 1 清理某個路徑下的日誌指令碼deloldlogs.sh 1 root prx0...

Linux使用定時任務每週定時清理45天以前日誌

本文主要介紹的是linux使用定時任務每週定時清理45天以前日誌。伺服器每天會產生很大的日誌檔案,為了不使硬碟被日誌檔案塞滿,因此需要定期清理日誌檔案。這時我們可以寫乙個shell指令碼用來清理某個路徑下45天以前的日誌,然後再設定乙個定時任務每週定時執行這個指令碼即可。清理某個路徑下的日誌指令碼d...

linux定時任務 at定時任務

at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...