linux上定时任务crontab命令的详细用法

在linux中,我们经常为了方便执行某些定时任务,这个时候就会用到一个命令, crontab这个命令。它是用来设置于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。

先来查看一下crontab的文件

root@:~# vi /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed

crontab文件的含义

minute:表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。- cron123
  • 比如每天0时0点执行nginx分割日志的定时任务的实例
  • 需要root的执行权限,执行路径写脚本的路径
0 0 * * * root /usr/local/nginx/sbin/cut_nginx_logs.sh
#第一个0代表0分,第二个0是0点,后面三个星号;
  • 执行自定义脚本
*/30 9-22 * * * root /root/yp.sh
# */30 代表每30分钟,9-22代表早上9点至晚上22点,后面三个星号;

crontab简单例子

每一分钟执行一次 /etc/ls:

* * * * * /etc/ls

在 12 月内, 每天的早上 6 点到 12 点,每隔 3 个小时 0 分钟执行一次 /usr/bin/backup:

0 6-12/3 * 12 * /usr/bin/backup

周一到周五每天下午 5:00   reboot重启一下

0 17 * * 1-5 reboot

每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分….执行 清空access.log日志文件的操作

20 0-23/2 * * * echo>/home/wwwlogs/access.log

crontab具体实例

0 */2 * * * lnmp nginx reload  意思是每两个小时重启一次nginx 

50 7 * * * /sbin/service sshd start  意思是每天7:50开启ssh服务 

50 22 * * * /sbin/service sshd stop  意思是每天22:50关闭ssh服务 

0 0 1,15 * * fsck /home  每月1号和15号检查/home 磁盘 

30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30执行一次ls命令

总体来说不是很难,根据crontab配置文件的格式来照葫芦画瓢往里套就可以。

上一篇 一分钟教你快速删除win10系统过期证书文件的方法
下一篇 错误网线制作方法(故障接法)造成各种稀奇古怪的奇葩问题……勿做坏事

投稿邮箱:
ivpsr888@gmail.com (投稿详情)

TG订阅频道:
t.me/ivpsr_news 网站最新内容推送

TG交流群:
(点击加入) 用户交流

文章列表
1
斯洛伐克电信即将关闭3G网络
斯洛伐克电信即将关闭3G网络
2
BreezeHost便宜VPS,$3.5/月,1核/2G内存/20gNVMe/10T流量,日本/新加坡/美国/法国/德国可选
BreezeHost便宜VPS,$3.5/月,1核/2G内存/20gNVMe/10T流量,日本/新加坡/美国/法国/德国可选
3
uqidc五一促销VPS全场五折12.5元/月起,原生IP TikTok专用,可选香港/美国/英国/荷兰/德国机房
uqidc五一促销VPS全场五折12.5元/月起,原生IP TikTok专用,可选香港/美国/英国/荷兰/德国机房
4
HostYun促销618,全场 8 折、香港、韩国、日本、美国多机房、月付16元起
HostYun促销618,全场 8 折、香港、韩国、日本、美国多机房、月付16元起
5
个人wordpress网站详细的安全无脑整站迁移恢复步骤简明教程2020.9.23
个人wordpress网站详细的安全无脑整站迁移恢复步骤简明教程2020.9.23
6
serverfield:独立服务器限时促销折扣$299,100M带宽,不限流量,台湾原生IP
serverfield:独立服务器限时促销折扣$299,100M带宽,不限流量,台湾原生IP
7
kali Linux修改系统root密码sudo passwd……快捷教程
kali Linux修改系统root密码sudo passwd……快捷教程
8
解决PIA S5 Proxy非大陆环境使用,雷电模拟器流畅代理各国偏远卡顿IP
解决PIA S5 Proxy非大陆环境使用,雷电模拟器流畅代理各国偏远卡顿IP
9
使用Code Snippets插件帮助快速的添加代码到functions.php文件教程
使用Code Snippets插件帮助快速的添加代码到functions.php文件教程
10
VinaHost:越南VPS、泰国/VPS,不限流量,年底特别活动续费7折优惠
VinaHost:越南VPS、泰国/VPS,不限流量,年底特别活动续费7折优惠