linux系統(tǒng)中設置定時任務的實現(xiàn)方式
1. 引入
1.1 日常開發(fā)中我們經(jīng)常需要設置一些定時任務
舉個栗子:
在進行Java Web開發(fā)時,通常我們采用Springboot 框架
我們可以通過 注解+ cron表達式,設置定時任務
1.2 實現(xiàn)方式
- 1.在springboot項目啟動類上,添加 @EnableScheduling 注解;
- 2.在需要設置定時任務的方法上,添加 @Scheduled(cron = “0 45 15 * * ?”) 注解。
- (注意:該方法或者該方法所在的類必須由springboot容器管理??梢栽谒陬惿咸砑覢Component 注解)
- 3.cron 表達式生成器網(wǎng)站:https://www.matools.com/cron
接下來,進入今天的主題。
2. 如何在linux系統(tǒng)中設置定時任務
2.1 安裝插件
yum install crontabs rsync –y
2.2 啟動插件
service crond start
在執(zhí)行啟動啟動插件命令時,可能報錯 找不到service命令。
解決方法如下:
- (1)執(zhí)行命令
yum list | grep initscripts
執(zhí)行命令后,會出現(xiàn):
- (2)繼續(xù)執(zhí)行命令
yum install initscripts -y
上述問題成功解決,回歸我們的定時任務主題。
3.設定定時任務
3.1 創(chuàng)建腳本 test.sh
(例如:啟動一個Java項目)
- 項目jar包存儲在 home路徑下。
- (如果該命令nohup java -jar test-0.0.1-SNAPSHOT.jar & 可用,也可以用該命令,在執(zhí)行報錯的情況下,可以用下邊腳本內(nèi)容。)
#!/bin/bash cd /home nohup /opt/java/bin/java -jar test-0.0.1-SNAPSHOT.jar &
- 設置腳本為可執(zhí)行文件
chmod +x test.sh
3.2 為腳本設置定時任務
1.執(zhí)行命令,進入編輯界面。
crontab -e
2.按鍵盤 i 鍵,進行編輯,輸入以下內(nèi)容,內(nèi)容表示每天4:00執(zhí)行一次腳本任務。
0 4 * * * /home/test.sh
- crontab 表達式網(wǎng)站:https://crontab.guru/
- crontab 表達式生成器:https://tool.lu/crontab/
3.用 wq 保存。
4.查看定時任務
crontab -l
基于此,我們已經(jīng)成功設置了java項目定時啟動的任務了。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
重啟寶塔面板后提示-ModuleNotFoundError: No module named ''geventwebso
這篇文章主要介紹了重啟寶塔面板后提示-ModuleNotFoundError: No module named 'geventwebsocket',本文給出了解決方法,需要的朋友可以參考下2019-11-11在Linux服務器和windows系統(tǒng)之間上傳與下載文件的方法
這篇文章主要介紹了在Linux服務器和windows系統(tǒng)之間上傳與下載文件的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04VMware Workstation Pro下CentOS 7 64位服務器安裝教程
這篇文章主要介紹了VMware Workstation Pro下CentOS 7 64位服務器安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08linux下SVN配置實現(xiàn)項目目錄自動更新以及源碼安裝的操作方法
下面小編就為大家分享一篇linux下SVN配置實現(xiàn)項目目錄自動更新以及源碼安裝的操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12詳解Win10 Bash/WSL調(diào)試Linux環(huán)境下的.NET Core應用程序
本篇文章主要介紹了詳解Win10 Bash/WSL調(diào)試Linux環(huán)境下的.NET Core應用程序 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04