`
alvinqq
  • 浏览: 185278 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

linux服务crond定时运行java程序

阅读更多
crontab 运行java程序
加入你的java程序位于/root/example目录下面,名为Test.java
Test.java内容为:
public class Test{
public static void main(String args[]){
  System.out.println("ok");
}
}
但是由于crontab不能读取java的相关环境变量,所以必须手动加载java环境变量。
方法一:
在此目录下面写一个shell名为run.sh内容如下:
#!/bin/sh
cd /root/example(这一条一定不要忘)
echo hello
java Test
然后运行命令crontab -e,添加一条命令:
*/1 * * * * . /root/example/run.sh >> /root/example/run.log
保存退出,然后重启crond服务:service crond restart
一分钟后看/root/example/run.log文件内容是否是echo和java两个的打印内容
一定要保证在crontab的5个星号后面有一个点加一个空格,crond才能保证自动加载java环境变量
方法二:
在run.sh里面用绝对路径加载java环境变量,则run.sh内容为:
#/bin/sh
cd /root/example(这一条一定不要忘)
/usr/java/jdk1.5.0.09/bin/java Test -cp /usr/java/jdk1.5.0.09/lib/tools.jar:/usr/java/jdk1.5.0.09/lib/dt.jar
然后crontab -e命令添加一条:
*/1 * * * * sh /root/example/run.sh >> /root/example/run.log
保存退出,然后重启crond服务:service crond restart
一分钟后看/root/example/run.log文件内容是否是echo和java两个的打印内容
方法三:
run.sh内容如下:
#!/bin/sh
JAVA_HOME=/usr/java/jdk1.5.0_09/
CLASSPATH="/usr/java/jdk1.5.0_09/lib/dt.jar:/usr/java/jdk1.5.0_09/lib/tools.jar:/usr/java/jdk1.5.0_09/lib/mysql.jar"
export CLASSPATH
PATH==/usr/java/jdk1.5.0_09/bin
export PATH
echo hello
cd /root/example(这一条一定不要忘)
java Test
然后crontab -e 添加一条:
*/1 * * * * sh /root/example/run.sh >> /root/example/run.log
保存退出,然后重启crond服务:service crond restart
一分钟后看/root/example/run.log文件内容是否是echo和java两个的打印内容
后两种方法crontab -e命令中sh可有可无。
无论是命令还是参数,都尽量使用绝对路径名称!
分享到:
评论

相关推荐

    Linux下定时任务,命令启停jar包服务

    Linux 下的定时任务和 jar 包服务管理 Linux 作为一款流行的操作系统,提供了许多强大的功能,其中之一就是定时任务的管理。定时任务允许用户在指定的时间执行特定的命令或程序,从而实现自动化操作。在 Linux 中,...

    crontab执行时间与系统时间不一致问题解决

    cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。  service crond start //启动服务  service crond stop //关闭服务  service crond restart //重启服务  service crond reload //...

    linux定时运行命令.docx

    - 定时运行Java程序: 创建一个`run.sh`脚本,运行Java程序: ```bash #!/bin/sh cd /root/javaExe/ java TestCron/Test ``` 在`crontab -e`中加入: ```bash */1 * * * * /root/run_sh/run.sh ``` 4. `...

    使用crond 在linux中定时执行任务.docx

    在Linux系统中,`crond`是一个非常重要的服务,它允许用户设置定时任务,以便在特定的时间点自动执行脚本或命令。`crond`服务是Linux中的计划任务守护进程,通常用于执行周期性的系统维护或管理工作。 首先,我们要...

    Linux-nohup日志拆分

    在Linux环境下,我们经常会使用`nohup`命令来运行一些长时间运行的任务,这些任务会将输出重定向到`nohup.out`文件中。随着运行时间的增长,这个文件可能会变得非常大,不仅占用大量磁盘空间,还可能影响系统的性能...

    kettle定时任务

    最后,需要重启crond服务,使得添加的定时任务生效。可以使用以下命令:/etc/init.d/crond restart。 查看执行结果 等待执行过程结束后,查看数据库,数据是否插入,日志是否生成。如果数据插入成功,日志生成成功...

    Linux系统中守护进程的创建方法.pdf

    守护进程与 Windows 中的后台服务程序比较类似,如 Windows 中有一种 time 系统服务,用来从远程主机获得日期和时间,Linux 中也有类似 的两个守护进程 time 和 time-udp,分别采用 TCP 和 UDP 协议从远程主机获得...

    NewMsg9260-软件篇_linux

    NewMsg9260可能需要与其他系统或服务集成,如使用`systemd`或`crond`实现自动启动和定时任务。理解这些系统服务的工作原理,有助于构建稳定、高效的自动化流程。 总结来说,NewMsg9260在Linux环境下的运行调试涉及...

    linux实现对上传文件的定时备份、增量备份的方法

    首先,基础的定时备份可以通过编写shell脚本结合Linux的`crontab`服务来完成。`crontab`是一个强大的定时任务调度工具,允许用户设置周期性被执行的任务。在确认系统已经安装了`crontab`(通过`rpm -qa | grep ...

    linux常见服务收集[文].pdf

    3. **anacron, atd, crond**:这些都是定时任务调度服务。anacron和atd主要用于非实时执行任务,而crond是标准的Unix cron服务,用于定期执行计划任务。如果系统长时间运行,建议保留crond。 4. **auditd**:用于...

    kettle 数据挖掘,组合转换 在windows和linux 使用,不同数据库之间数据同步

    - 重启Crontab服务以应用新的定时任务配置,使用`systemctl restart crond`命令,并通过`systemctl status crond`查看服务状态。 - 使用`tail -f /var/log/cron`监控Crontab的日志,以及`cd /usr/local/kettle/...

    thinkphp 5.1 定时任务,Crontab 计划任务-think-cron.zip

    2. 要确保Crontab服务正在运行,可以通过`systemctl status crond`(对于Systemd系统)或`service crond status`(对于非Systemd系统)进行检查。 3. 为了监控任务的执行情况,你可以在任务代码中添加日志记录,...

    利用Linux中的crontab实现分布式项目定时任务功能

    crond 服务每分钟都会检查是否有要执行的任务,如果发现有预设的任务需要执行,就会按照设定的时间自动运行相应的脚本或者命令。 Linux 任务调度主要可以分为两大类: - **系统执行的工作**:这是指系统层面周期性...

    SecureCRT中常用linux命令

    - `nohup java -jar ****.jar &`,使Java程序在后台持续运行。 ##### 17. **ps -ux**: 查看当前使用CPU、MEM的情况 - **功能描述**:显示用户所拥有的所有进程的资源使用情况。 - **用法示例**: - `ps -ux`,...

    linux crt vim等命令大全

    - **后台执行程序**: `nohup java -jar ****.jar &`,使用`nohup`命令让程序在后台运行,并且即使用户退出也不受影响。 #### 3. 文件编码转换 - **iconv**: 用于转换文件的编码格式。例如:`iconv -f gbk -t utf8 ...

    CentOS_minimal

    4. 检查Cron服务状态,使用`ps -ef | grep crond`确认服务是否正在运行。 5. 验证Cron服务是否启动成功,使用`chkconfig --list | grep cron`检查。 #### 三、配置YUM源 在部署MySQL前,需要配置YUM源以获取最新的...

    centos7中crontab定时计划任务5分钟一次命令写法

    如果`crond`服务未启动,你可以使用`systemctl start crond`命令启动它,并使用`systemctl enable crond`命令设置开机启动,以确保每次系统重启后都能自动运行crontab服务。 这个定时任务的例子中,`spark_run_...

    shell入门到进阶,脚本机动化

    为了确保数据的安全性,shell脚本可用于实现MySQL数据库的完全备份与增量备份,并结合`crond`定时任务自动执行,确保数据的一致性和完整性。这种方式不仅提高了备份效率,还降低了人为操作失误的风险。 ### 远程...

Global site tag (gtag.js) - Google Analytics