1. 程式人生 > >linux Crontab定時執行JAR

linux Crontab定時執行JAR

在linux下面執行java程式,一般情況下我們先打包成jar檔案,然後放在linux下,用指令碼去執行它。

time.sh:

#!/bin/bash

 

export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64

export PATH=$JAVA_HOME/bin:$PATH

 

java -jar /opt/local/test/SimHash.jar

 

注意需要給time.sh賦權(chmod 777 aaa.txt 給aaa.txt 賦權)

首先需要匯入java的環境變數,如果想要在執行中文的時候不出現亂碼,還要匯入中文編碼。之所以要匯入這些內容,是因為crontab定時程式呼叫指令碼時,系統的環境變數是沒有載入的。

其次執行jar的命令是java -jar 加jar檔名稱就可以了,這個命令是跨平臺的。

 

在Linux系統中執行jar包,大家都知道可以直接輸入java -jar XXX.jar。設想一個場景,這個jar包是一個關於對賬的,對賬需要每天都對,每天通過手工敲這行程式碼,顯然不方便。所以,我們可以利用crontab進行定時任務的設定。

定時任務列表,輸入crontab -e,在裡面輸入你想要設定的定時任務:

每天凌晨1點10分執行指令碼,輸出日誌到指定檔案

crontab檔案格式:

 *           *        *        *        *           command

分          時         天      月        星期       命令

 

*/5 * * * * /home/test.sh 在每5分鐘執行一次test.sh指令碼