作为一个后端工程师需要懂得运维基础之Crontab的使用

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

前言:

在公司中有因为有很多数据都是定时在凌晨或者其他时间段执行,所以就用到了定时功能
下面我就说一说Crontab的使用,这个是一个最基本的运维操作了。

一、使用Crontab

当你准备使用Crontab的时候发现

-bash: crontab: command not found

那么不好意思,你需要进行安装,请执行一下命令:

yum install vixie-cron crontabs

安装完成后可执行以下语句是否安装成功

crontab -l

若出现

no crontab for root

请执行,以下看看服务的状态,并开启服务

service crond status
service crond start

这样一切准备的差不多了,再熟悉下大概的命令把

crontab的文件格式
分 时 日 月 星期 要运行的命令

第1列分钟0~59
第2列小时0~23(0表示子夜)
第3列日1~31
第4列月1~12
第5列星期0~7(0和7表示星期天)
第6列要运行的命令

下面是个简单的例子说明:

*/1 * * * * /data/wwwroot/crontabfile/baiduPush.sh >> /data/wwwroot/crontabfile/result.log 2>&1 

这里表示的定时1分钟执行’/data/wwwroot/crontabfile/’这个路径下的sh文件,并把文件执行返回的结果写入到result.log日志中。

我们可以通过

cat /data/wwwroot/crontabfile/result.log

来查看日志里的内容,来查看定时执行是否成功,是否会有什么错误问题

查看的结果如下:

{"remain":4999966,"success":2}Sun Apr 1 14:14:01 CST 2018 :run baiduPush.php
{"remain":4999964,"success":2}Sun Apr 1 14:15:01 CST 2018 :run baiduPush.php
{"remain":4999962,"success":2}Sun Apr 1 14:16:01 CST 2018 :run baiduPush.php
{"remain":4999960,"success":2}Sun Apr 1 14:17:01 CST 2018 :run baiduPush.php
{"remain":4999958,"success":2}Sun Apr 1 14:18:01 CST 2018 :run baiduPush.php
{"remain":4999956,"success":2}Sun Apr 1 14:19:01 CST 2018 :run baiduPush.php
{"remain":4999948,"success":8}Sun Apr 1 14:20:01 CST 2018 :run baiduPush.php
{"remain":4999939,"success":9}Sun Apr 1 14:21:01 CST 2018 :run baiduPush.php
{"remain":4999930,"success":9}Sun Apr 1 14:22:01 CST 2018 :run baiduPush.php
{"remain":4999921,"success":9}Sun Apr 1 14:23:01 CST 2018 :run baiduPush.php
{"remain":4999912,"success":9}Sun Apr 1 14:24:01 CST 2018 :run baiduPush.php
{"remain":4999903,"success":9}Sun Apr 1 14:25:01 CST 2018 :run baiduPush.php
{"remain":4999894,"success":9}Sun Apr 1 14:26:02 CST 2018 :run baiduPush.php
{"remain":4999885,"success":9}Sun Apr 1 14:27:01 CST 2018 :run baiduPush.php
{"remain":4999876,"success":9}Sun Apr 1 14:28:01 CST 2018 :run baiduPush.php
{"remain":4999867,"success":9}Sun Apr 1 14:29:01 CST 2018 :run baiduPush.php
{"remain":4999858,"success":9}Sun Apr 1 14:30:01 CST 2018 :run baiduPush.php
{"remain":4999849,"success":9}Sun Apr 1 14:31:01 CST 2018 :run baiduPush.php
{"remain":4999840,"success":9}Sun Apr 1 14:32:01 CST 2018 :run baiduPush.php
{"remain":4999831,"success":9}Sun Apr 1 14:33:01 CST 2018 :run baiduPush.php

下面我也简单的附上我的shell脚本:

#!/bin/sh
#cd /data/wwwroot/crontabfile
echo `date` :run baiduPush.php
/usr/local/php/bin/php /data/wwwroot/crontabfile/baiduPush.php

简单命令查看php的位置在哪里:
命令(一):

 whereis php

结果(一):
whereis php

php: /usr/local/php /usr/local/php/bin/php

命令(二):

which php

结果(二):

/usr/local/php/bin/php
注:后续我将继续更新关于运维知识的文章,敬请期待!!也希望大家多关注,指导我谢谢。
linux中使用crontab设置定时任务_crontab定时任务配置,字节跳动架构师讲解Linux运维开发 GC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算**| 含义 | 每个小时的第几分钟执行该任务 | 每天的第几个小时执行该任务 | 每月的第几天执行该任务 | 每年的第几个月执行该任务 | 每周的第几天执行该任务 | 阅读详情

相关推荐

运维工程师面试题 答案仅供参考

一、有文件file1 1、查询file1里面空行的所在行号 awk ‘{if(KaTeX parse error: Expected group after '^' at position 4: 0~/^̲/)print NR}’ file or grep -n ^$ file |awk ‘BEGIN{FS=”:”}{print $1}’ 2、查询file1以abc结尾的行 grep abc$ f...

weixin_45741538的博客 2959

全栈 前端+后端+运维

前端+后端 编码 上线 数据分析 持续交付 全栈工程师成长之路的必看书籍!!!

运维工程师模拟面试题

Linux运维面试题 1.Linux 常见系统发行版本及常见的服务器品牌和配置有哪些? 1)发行操作系统:CentOS Redhat Ubuntu SUSE 等 2)服务器品牌:DEll R720,IBM 3650、HP DL360 等; 3)2颗6核 CPU-Xeon 至强 E5-2630 2.4Ghz,2U 服务器应用服务器:300Gx2 RAID 1,容量为 300G数据库服务器:4x300G,RAID 10,容量为 600G 2.Linux 系统启动流程是什么? 硬件加电质检–>BIOS 检测

ss12528的博客 4334

程序员必看:前端、后端、测试、运维的核心区别,选对技术路线少走弯路

前端、后端、测试、运维四大技术方向深度对比,从工作内容、技术栈、学习难度、适合人群、发展前景全方位解析,用大白话讲清各岗位核心区别,帮零基础、转行、迷茫的程序员快速找准技术路线,避开职业选择误区,看懂代码之外的行业逻辑,从只会写代码的开发者升级为懂架构、懂业务的工程师

中后台前端工程师,专注技术本质,用通俗语言讲清硬核知识点,持续输出成长干货。 976

java转行可以做什么?_java后端运维工程师

Java程序员转行有几个不错的选择,以下是一些建议:转向管理层:如果Java程序员有管理经验,可以考虑转向管理层,如项目经理、技术经理等。这需要掌握一定的管理能力和项目处理能力,可以参加相关的培训课程来提升这方面的能力。转行做技术相关的岗位:如果Java程序员想继续留在技术领域,但想做一些与之前不同的工作,可以选择转行做技术相关的岗位,比如售前/售后工程师、产品经理、培训讲师等。这些职位需要对市场和技术都有一定的了解,但同时也需要具备一定的技术基础

yy1715713348的博客 1640

真相:前端、后端、测试和运维,到底哪个更有发展前途?

我的一个后端工程师朋友说,公司让他一个人开发对账系统,没有给他搭配前端工程师,结果他用DeepSeek直接生成了前端Vue代码,又学了两天Vue语法改了改代码,就直接可以用了。当然,入门简单也就意味着专业壁垒低,可以从一些小公司不招测试岗,都是后端工程师进行自测,以及互联网大厂将大部分测试工作外包化中看出来。接下来讲讲岗位前途的上限,各个互联网大厂的技术中高层,至少有 70%都是后端岗出身的。至于加班和值班的区别,加班是需要写代码的,而值班则可以打游戏,懂的都懂。前途的下限是保住饭碗,延缓中年危机。

Java技术栈,分享最主流的Java技术 1114

我是如何从JAVA转到运维又转回java工程师的?

我的群里有绝大部分都是在校学生,有本科的,也有专科的,我在微信里收到很多初学者的提问,大部分问题都跟如何学习编程有关,有换专业自学的、有迷茫不知道如何学习的、有报培训班没啥效果的等等,我觉得我很有必要写下这篇文章,以此来告诫初学者。 自传 我是一个专科生,而且是毕业于一个不出名的大专学院,大学里我学的是JAVA编程,哪个时候其实我对java一无所知,我只知道它可以让我和我父亲走不通的道路,我接触的...

qq_43652793的博客 1万+

Linux定时任务crontab,2024年Linux运维工作或许更难找

为了做好运维面试路上的助攻手,特整理了上百道。

2401_84140580的博客 870

linux运维工程师工作中的一些常见问题解决方法

本文总结了linux运维工程师在工作中遇到的一些问题及解决方法,希望对从事运维工作的新手们有所帮助!1.shell脚本死活不执行问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错。我看了下,脚本很简单,也没有常规性的错误,报“:badinterpreter:Nosuchfileordirectory”错。一看这错,我就问他是不是在windows下编写的脚...

weixin_33896069的博客 5555

crontab使用和说明_crontab -e怎么保存退出,2024年最新四年Linux运维面试遇到的问题整理

虽然我们添加了任务,但是如果 cron 的守护进程并没有启动,它根本都不会监测到有任务,当然也就不会帮我们执行,我们可以通过以下2种方式来确定我们的 cron 是否成功的在后台启动,默默的帮我们做事,若是没有就得执行上文准备中的第二步了。而选择后我们会进入这样一个画面,这就是添加计划的地方了,与一般的配置文档相同,以#号开头的都是注释,通过文档的最后一排我们可以猜猜 crontab 的格式是什么样的呢?通过图中的显示,我们也可以看出,我们正确的保存并且添加成功了该任务的。

m0_60388338的博客 686

Linux定时任务crontab(1),Linux运维客户端开发面试题目

为了做好运维面试路上的助攻手,特整理了上百道。

2401_84140580的博客 706

crontab使用方法介绍_crontab用法,面试字节跳动Linux运维研发岗

crontab -l 查看当前的定时任务crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建。 crontab –l : 显示 crontab 文件。 crontab -r : 删除 crontab 文件。 crontab -ir : 删除 crontab 文件前提醒用户。以上就是crontab使用规则,以及定时方法的使用。下面我们先来写两个简单的定时任务来让大家认识一下crontab的魅力:第一个例子:将命令行的ls信息输出到ls.log文件中,频率为每分钟1次1.

m0_60635609的博客 520

linux crontab 文件位置和日志位置_crontab 指定日志输出位置日志

本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论。可以将每条 crontab中的任务增加自己的日志,有利于查找执行失败原因。

2401_83946044的博客 1491

crontab使用方法介绍_crontab用法(1),面试必问知识点

算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算**2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?5、LVS、Nginx、HAproxy有什么区别?15、讲述一下LVS三种模式的工作过程?

m0_60635609的博客 892

crontab使用方法介绍_crontab用法,2024年最新又是一年金九银十

但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?5、LVS、Nginx、HAproxy有什么区别?9、讲述一下Tomcat8005、8009、8080三个端口的含义?7、Tomcat和Resin有什么区别,工作中你怎么选择?

2401_84164503的博客 697

Linux运维工程师

Linux 运维 = 会命令 + 会看日志 + 会排错 + 保证稳定。把这份手册练熟,你已经超过 60% 自学新手。

li5641282的博客 272

Linux-自动化运维(计划任务)——at和crontab命令

经验丰富的系统运维工程师可以使得Linux在无需人为介入的情况下,在指定的时间段自动启用或停止某些服务或命令,从而实现运维的自动化。 计划任务: 一次性计划任务 at 长期性计划任务(周期性) crontab 1、一次性计划任务 可以理解为布置作业,布置只需完成一次的作业。 at类命令的服务名为atd,可以使用命令systemctl status atd查看atd服务是否启动 执行脚本存放在 ...

熊博主 642

crontab用法与实例_elastic crontab,2024年最新Linux运维

如“2-5”表示“2,3,4,5”,小时字段中0-23/2表示在0~23点范围内每2个小时执行一次。"/"代表每一定时间间隔的意思,如分钟字段为*/10,表示每10分钟执行1次。2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?"*"代表所有的取值范围内的数字,如月份字段为*,则表示1到12个月;5、LVS、Nginx、HAproxy有什么区别?","分散的数字(不一定连续),如1,2,3,4,7,9。

m0_60388292的博客 1148
上一篇: PHP四大加速缓存器opcache,apc,xcache,eAccelerator与php解析的初步理解
下一篇: 作为一个运维工程师服务器数据监控是必不可少了,那么grafana+influxdb+telegraf搭建lunix下的监控平台
Alan_Weng
博客等级 码龄11年 26粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值