上週學習了linux,其中有使用crontab定時備份日誌的內容,現把主要步驟記錄如下:
首先需要備份的日誌的源目錄位於/opt/lampp/logs/access_log
備份到/tmp/logs下
備份檔案加上時間戳date +%y%m%d%h%m%s
以上是備份說明,下面分三步操作
一、shell指令碼
[root@centos6 lampp]# vi test.sh #建立shell指令碼
#!/bin/bash #編譯器
mypath='/tmp/logs' #日誌備份到該目錄下,定義變數使用單引號
echo $ #回應/tmp/logs
mylog='/opt/lampp/logs/access_log' #我們要備份的日誌
echo $ #回應/opt/lampp/logs/access_log
time=`date +%y%m%d%h%m%s`#時間戳,執行命令使用``,esc下面的
echo $ #回應時間戳
cp $ $/$_access.log #備份日誌access_log到/tmp/logs路徑下
echo $ $/$_access.log#回應
[root@centos6 lampp]# ./test.sh #執行test.sh
-bash: ./test.sh: 許可權不夠 #會提示許可權不夠
[root@centos6 lampp]# chmod +x ./test.sh #需要給這它賦與許可權
[root@centos6 lampp]# ./test.sh #再次執行,指令碼沒有報錯
/tmp/logs
/opt/lampp/logs/access_log
20161227172323
/tmp/logs /tmp/logs/20161227172323_access.log
二、crontab 定時任務
[root@centos6 lampp]# crontab -e #編輯定時任務
* * * * * sh /opt/lampp/test.sh #每分鐘執行一次test.sh,crontab使用在上篇linux命令中詳細介紹
[root@centos6 lampp]# crontab -l #檢視定時任務
* * * * * sh /opt/lampp/test.sh
三、重啟crond
[root@centos6 lampp]# service crond reload
重新載入 crond: [確定]
開啟xftp檢視
總結:1- 先單獨執行 .sh ,確定 .sh 可以執行不報錯
2- 從根目錄查詢 *.access.log 看看備份的存放路徑是否正確
3- 檢查 crontab 裡的空格是不是半形英文
linux下的crontab使用
名稱 crontab 使用許可權 所有使用者 使用方式 crontab u user file crontab u user 說明 crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的時程表。u user 是指設定指定 user 的時程表,這個前提是你必須要有...
linux下使用crontab新建定時任務
我安裝了乙個全文搜尋的外掛程式,但是需要生成索引才能使用,但是不能手動生成索引,所以說呢,我就加了乙個定時任務,一 首先vim etc crontab 開啟檔案 我根據上面的提示加了使用者名稱,但是看到其他的人寫的都沒加,不知道怎麼回事,反正可以用我,哈為什麼用sh檔案呢,因為我得進入某個目錄在執行...
Linux下使用crontab執行定時任務
linux系統使用crontab執行任務,共兩種處理方式 修改 etc crontab檔案 使用命令crontab e 需要設定執行使用者,例如root,該檔案新增的任務,在crontab l 命令下不展示 設定環境變數 shell bin bash path sbin bin usr sbin u...