cron定时任务
相关命令:
crontab -e //编辑任务
crontab -l //显示目前所有的任务
crontab -r //删除所有的任务
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
具体使用:
1:在命令行执行crontab -e
2:添加一个任务(*/1 * * * * /home/lingdu/demo.sh)
这里普及一些小知识:
ls > a.txt //将内容输出到a.txt文件下(不追加内容,即每次都会新建一个文件)
ls >> a.txt //将内容输出到a.txt文件下(追加内容)
echo lingdu >> a.txt //可以将变量输出到a.txt文件
//动态查看文件
Tail -f a.txt -f表示查看后几行数据
//查看所有文件
ls –la
//创建批处理文件
vi e.sh
使用定时任务实现每分钟执行一次Java程序
1、编写一个java代码
这里我就写一个简单的hello程序
2、编写一个shell脚本,运行java代码
#!/bin/bash
export JAVA_HOME=/jdk1.8.0_60
export PATH=.:$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
java Hello >> a.txt
3、修改shell脚本权限
刚创建的Hello.sh文件是没有可执行权限的(x) ,所以要添加一个可执行的权限
修改权限之后测试一下是否可以正常执行
执行发现没有问题,而且也帮我们创建了a.txt文件并且把内容输出到了文件
4、添加到定时任务crontab -e
*/1 * * * * /root/Hello.sh
保存退出,然后使用 crontab -l
显示目前所有的任务
*/1 * * * * 命令 中每个 “ * ” 号的意思
minute hour day month week command
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
5、tail -f a.txt 查看a.txt后几行
每一分钟会自动添加一句,说明定时任务已经启动成功了。