linux定时任务执行java

一、Linux 设置如何定时启动jar包


mkdir bak//创建一个文件夹touch auto.sh //创建一个脚本文件touch  cron.log //输出文件,用来查看输出日志vim auto.sh  //编辑脚本文件chmod 777 auto.sh

之后把相应的jar包通过rz上传,上传到服务器上面来。

脚本文件 auto.sh 里面填入相应的内容

nohup /usr/local/jdk/jdk1.8.0_151/bin/java -jar /bak/demo-1.0-SNAPSHOT.jar &

执行定时任务时带jdk绝对路径。

接下来设置定时器

通过crontab -e 进入crontab模式设置定时任务

通过crontab -l 查看所有任务

这是设置的每一分钟执行一次auto.sh脚本文件,然后把相应的结果输出到cron.log里面。

*       *        *        *        *     commandminute   hour     day    month   week      command分        时       天      月      星期        命令
*/1 * * * * /bak/auto.sh >> /bak/cron.log
5      *       *         *     *     ls             指定每小时的第5分钟执行一次ls命令
30     5       *         *     *     ls             指定每天的 5:30 执行ls命令 
30     7       8         *     *     ls             指定每月8号的7:30分执行ls命令
30     5       8         6     *     ls             指定每年的6月8日5:30执行ls命令 
30     6       *         *     0     ls             指定每星期日的6:30执行ls命令[注:0表示星期天,1表示星期1, 以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。]
30     3       10,20     *     *     ls             每月10号及20号的3:30执行ls命令[注:“,”用来连接多个不连续的时段]
25     8-11    *         *     *     ls             每天8-11点的第25分钟执行ls命令[注:“-”用来连接连续的时段]
*/15   *       *         *     *     ls             每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ]
30     6       */10      *     *     ls             每个月中,每隔10天6:30执行一次ls命令[即每月的1、11、21、31日是的6:30执行一次ls 命令。 ]每天7:50以root 身份执行/etc/cron.daily目录中的所有可执行文件
50     7       *         *     *     root     run-parts     /etc/cron.daily   [ 注:run-parts参数表示,执行后面目录中的所有可执行文件。 ]

 

二、定时任务传输文件(根据时间查找文件名)

nohup sshpass -p '密码' scp -P 端口 /bak/`date -d "15 day ago" +%Y%m`data.xlsx dataex@ip:/bak/wq/ &


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部