通過crontab定時執行shell腳本教程

大家好,今天發表一篇比較基礎的文章,對於初學者來說應該算是比較簡單而且實用的--通過crontab定時執行shell腳本

今天測試了一個elk系統捕獲日誌信息的功能,發現接口返回的數據與日誌來源內容不一致,然後就通過crontab定時執行我的測試腳本(向文件中寫數據),看下向指定文件中寫入日誌,接口能不能讀取到

爲了完成以上操作,我把過程分享給大家,希望能夠幫助到各位老鐵

1.首先看下linux系統下是否安裝了crontab(一般linux系統自帶),如果沒有使用yum下載安裝即可;

--->輸入which crontab,顯示安裝目錄說明系統以及安裝

2.準備要執行的腳本文件,我們讓它寫數據到某個文件中;

--->我給它取名叫test.sh(英文名,哈哈~~),內容如下

--->說明:獲取當前系統時間(格式:月 日 時分秒)和節點名,echo後是要寫入的內容,到/var/log/messages中

3.給這個test.sh賦予可執行的權限

4.接下來打開crontab的配置文件/etc/crontab ,如下圖所示

--->爲了有修改文件的權限,我們通過使用sudo vi  /etc/crontab 指令打開文件

--->截圖中有參數說明信息和我們要定時執行的腳本路徑

--->下圖我寫的是每小時寫一次數據到指定文件中

5.編輯完保存之後,查看下crontab服務是否開啓

--->如果沒有開啓,一定要啓動該服務

--->查看狀態:service crond status

6.以上工作完成後,我們看下/var/log/messages中是否自動寫入了指定的內容

--->vim /var/log/messages

--->中間16:49:36的數據是當時調試接口手動執行的,可忽略~

到此完工,每隔一小時就會自動寫數據到指定文件中,應用場景很多很多,我只是舉個例子~

 

大家可以根據實際情況去編輯腳本內容就可以了,希望可以幫助到各位~,告辭了~