Linux下使用crontab命令定时执行脚本

简介:

crontab是什么

关于crontab的介绍参考:
http://www.runoob.com/linux/linux-comm-crontab.html
http://www.runoob.com/w3cnote/linux-crontab-tasks.html
https://www.computerhope.com/unix/ucrontab.htm

crontab怎么使用

假设现在有这么个场景:每天早上6点,执行一段脚本,这段脚本输出Hello World到控制台上。
可以这么做:

  • 编写打印信息的shell脚本;
    1.编写helloword.sh
#!/bin/bash
echo "helloword"
  • 编写执行定时任务的cron表达式,放到文件中;
    1.文件命名没有固定规则限制,暂且叫它cronfile吧

0 6 * * * /bin/bash /home/wayss/test/cornfile
注意:这里的cron表达式和cronfile之间的/bin/bash我这里测试时不能少,少了就不能正确执行了。然而像菜鸟教程给的那些文档,都没有。

  • 添加定时任务;
    执行命令[wayss@localhost ~]$ crontab cronfile就把cronfile里面的定时任务添加到执行队列了。

可以通过[wayss@localhost ~]$ crontab -l查看是否添加成功。添加成功的话,列表会有显示。

crontab的cron表达式和Quartz的cron表达式区别

crontab表达式格式如下:f1 f2 f3 f4 f5 program

其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。

Quartz表达式格式如下:f1 f2 f3 f4 f5 f6 f7
含义,分别是f1表示秒,f2表示分钟,f3表示小时,f4表示日,f5表示月份,f6表示星期,f7表示年。
可参考:http://www.pdtools.net/tools/becron.jsp

目录
相关文章
|
1天前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
19天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
49 14
Linux 10 个“who”命令示例
|
8天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
75 20
|
8天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
32 7
|
28天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
33 9
|
26天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
1月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
125 3
|
2月前
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
98 5
|
6月前
|
Unix Linux
Linux中的Crontab:定时任务管理器
`crontab`是Linux下的定时任务管理器,用于设置周期性执行的任务。用户可以通过`crontab -l`查看任务,`crontab -e`编辑,`crontab -r`删除任务。任务格式为:`* * * * * command`,分别代表分钟、小时、日期、月份、星期,例如`30 10 * * * /path/to/script.sh`。注意确保命令有执行权限,处理环境变量,并关注日志文件 `/var/log/syslog` 或 `/var/log/cron`。学会使用`crontab`能有效自动化Linux系统的日常任务。
|
5月前
|
数据挖掘 Linux Shell
linux 使用crontab 创建定时任务
linux 使用crontab 创建定时任务
129 0
linux 使用crontab 创建定时任务