Linux上执行定时任务

本周遇到了一个问题,那就是线上有个进程不知道什么原因,总是自动的停止,在问题还没有找到之前,需要在Linux服务器上写一个定时任务,当进程停止的时候,重启服务。这里总结下如何在服务器上编写定时任务。
编写定时任务需要crontab命令的支持,下面的命令可以检查是否安装了crontab命令:

rpm -qa | grep crontab

如果安装了则会打印出crontab的版本,如果没安装,请执行:

centOS
yum -y install vixie-cron
yum -y install crontabs
或者
Ubuntu
apt-get install cron

安装好了之后使用:

    /sbin/service crond status

查看crond是否在运行,如果没有的话,使用:

/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置

下面我们介绍如何编写cron命令来使用定时任务,首先介绍下定时任务的语法,

* * * * * 要执行的任务
crontab语法格式中时间段的含义如下表
段 含义 取值范围(整数)
第一段 代表分钟 00 – 59 (00也可以是0)
第二段 代表小时 00 – 23
第三段 代表日,天 01 – 31
第四段 代表月份 01 – 12
第五段 代表星期,周几 0 -7(0和7都代表星期日)

知道了定时任务的语法之后,我们就可以编写定时任务了,如果我每5分钟要执行一个test.sh的脚本,这个脚本在/home/script下,那么使用crontab -e,然后写入:

0/5 * * * * sh /home/script/test.sh

这样就在服务器上启动了一个每5分钟执行脚本的定时任务,那么如何查看服务器上所有的定时任务呢?使用crontab -l,可以把所有的定时任务都展示出来。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容