Linux中Cron的用法
Unix/Linux中Cron的用法
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
可以将这个服务在系统启动的时候也自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start
1.直接用crontab命令编辑
cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:
crontab -u root -l
再例如,root想删除fred的cron设置:
crontab -u fred -r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:
引用:
crontab -u root -e
进入vi编辑模式,编辑的内容一定要符合下面的格式:
*/1 * * * * ls >> /tmp/ls.txt
这个格式的前一部分是对时间的设定,后面一部分是要执行的命令,如果要执行的命令太多,可以把这些命令写到一个脚本里面,然后在这里直接调用这个脚本就可以了,调用的时候记得写出命令的完整路径。
时间的设定我们有一定的约定,前面五个*号代表五个数字,数字的取值范围和含义如下:
引用:
分钟(0-59)
小時(0-23)
日期(1-31)
月份(1-12)
星期(0-6)//0代表星期天
除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。
以下举几个例子说明问题:
引用:
每天早上6点
0 6 * * * echo "Good morning." >> /tmp/test.txt //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。
每两个小时
0 */2 * * * echo "Have a break now." >> /tmp/test.txt
晚上11点到早上8点之间每两个小时,早上八点
0 23-7/2,8 * * * echo "Have a good dream:)" >> /tmp/test.txt
每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * 1-3 command line
1月1日早上4点
0 4 1 1 * command line
2.编辑/etc/crontab 文件配置cron
cron服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情。
用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务。
此文件的文件格式是:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly //每个小时去执行一遍/etc/cron.hourly内的脚本
02 4 * * * root run-parts /etc/cron.daily //每天去执行一遍/etc/cron.daily内的脚本
22 4 * * 0 root run-parts /etc/cron.weekly //每星期去执行一遍/etc/cron.weekly内的脚本
42 4 1 * * root run-parts /etc/cron.monthly //每个月去执行一遍/etc/cron.monthly内的脚本
使用者运行的路径
注意"run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名了。
Linux命令高级技巧使用cron进行定时任务管理
Linux命令高级技巧使用cron进行定时任务管理使用cron进行定时任务管理cron是Linux系统中用于定时执行任务的工具。
它允许用户根据需求设置定时任务,可以执行一次性任务,也可以周期性地执行任务。
本文将介绍如何使用cron进行定时任务管理,并列举一些常用的高级技巧。
一、cron的基本用法1. cron的任务配置文件cron的任务配置文件位于/etc/cron.d/目录下,每个用户都可以在该目录下创建以自己用户名命名的文件来设置自己的定时任务。
2. cron任务的格式cron任务的格式为:```* * * * * command```其中,五个星号分别代表分钟、小时、日期、月份和星期几。
每个星号可以接受的值有以下几种:- *:表示任意值,即不作限制- 1~59/2:表示从1开始,每2个数取一个值- 1,5,10:表示只接受1、5、10这些值- 1-5:表示接受1到5之间的值3. 编写cron任务在任务配置文件中添加一行cron任务,例如:```0 1 * * * /usr/bin/python3 /home/user/backup.py```上述任务表示每天凌晨1点执行一次"/usr/bin/python3/home/user/backup.py"这个命令。
二、常用的高级技巧1. 执行多个命令可以使用分号来分隔多个命令,例如:```0 2 * * * command1; command2```上述任务表示每天凌晨2点执行command1和command2这两个命令。
2. 标准输出和错误重定向可以使用">"将标准输出重定向至文件,使用"2>"将错误输出重定向至文件,例如:```0 3 * * * command > /tmp/output.txt 2> /tmp/error.txt```上述任务表示每天凌晨3点执行command命令,并将标准输出保存至/tmp/output.txt文件,将错误输出保存至/tmp/error.txt文件。
在Linux终端中使用cron定时执行任务
在Linux终端中使用cron定时执行任务Linux操作系统提供了一种强大的工具,即cron,它允许用户在指定的时间间隔内自动执行任务。
使用cron,可以轻松地实现定时备份文件、更新系统、执行脚本等操作。
一、了解cronCron是一种用于定时运行命令或脚本的工具,它在后台运行,并根据预先设置的时间表执行任务。
在Linux终端中,可以通过编辑crontab文件来管理cron的任务列表。
二、编辑crontab文件要编辑crontab文件,可以使用以下命令:```crontab -e```这将打开一个文本编辑器,显示当前用户的cron表。
每一行代表一个计划任务,由时间表达式和要执行的命令组成。
三、时间表达式cron使用时间表达式来定义任务的执行时间。
时间表达式由五个不同的字段组成,分别表示分钟、小时、日期、月份和星期。
这些字段使用空格或者通配符来表示。
- 星号(*)表示所有可能的值,例如在分钟字段中,*表示每分钟都执行。
在其他字段中,*表示所有可能的值。
- 逗号(,)用于分隔枚举值,例如"1,3,5"表示1、3和5。
- 减号(-)用于指定一个范围,例如"1-5"表示1到5。
- 正斜杠(/)用于指定间隔,例如"*/10"表示每10分钟。
- 除号(/)用于指定除法,例如"5/15"表示从第5分钟开始,每隔15分钟执行一次。
四、实例以下是一个示例crontab文件,展示了如何使用cron来定时执行任务:```# 每天凌晨3点备份文件0 3 * * * /usr/bin/backup.sh# 每小时更新系统0 * * * * /usr/bin/update.sh# 每周一清理日志文件0 0 * * 1 /usr/bin/clean_logs.sh```在上述示例中,每天凌晨3点备份文件的任务被安排在第一行。
通过指定执行时的分钟位为0,小时位为3,其余时间位使用星号代替,就可以实现在每天的3点运行任务。
cron表达式每2分钟一次
cron表达式每2分钟一次经常有人问,如何以比较快的频率定期运行一个任务?在Linux 系统中,有一种特殊的表达式可以做到这一点:cron表达式。
本文将介绍cron表达式每2分钟一次,如何实现它。
什么是cron表达式?cron表达式是一种特殊的Linux表达式,它可以定期执行某个任务。
它是由“cron”的名字来的,cron是一种行业标准的定时任务管理机制,它可以定期执行一些任务。
cron表达式是以分钟、小时、天、月和星期几的形式来指定任务定时执行时间,其中每两分钟可以指定1次执行任务,也就是cron 表达式每2分钟一次。
比如,想要在每一分钟执行任务,可以使用0/1 * * * * 四位表达式来实现:* * * * 0/1其中,“0/1”表示每一分钟,“*”表示执行任何时间,其他三个“*”可以忽略。
实现cron表达式每2分钟一次实现cron表达式每2分钟一次,需要使用0/2 * * * * 五位表达式:* * * * 0/2其中,“0/2”表示每两分钟,“*”表示任何时刻都可以执行,其他三个“*”可简化为一个“*”。
如何使用cron表达式定时执行任务?使用cron表达式定时执行任务,需要在Linux系统设置定时任务,有两种常见的方式:(1)安装cron计划计划器:Linux系统自带有一个轻量级的定时计划计划器,叫cron,它可以通过一些表达式定义任务,并在指定的周期内自动执行任务,比如cron表达式每2分钟一次,以及更高的时间精度。
(2)使用crontab命令:Linux系统也可以通过使用crontab命令来定时执行任务,其使用方法如下:crontab [-u户] [-e辑器] [文件]其中,参数-u用户可以指定任务的执行用户;参数-e编辑器可以指定任务的编辑器;参数文件可以指定任务的文件名。
以每2分钟执行任务为例,可以使用如下命令:crontab -e 0/2 * * * *上面的命令可以定义每2分钟执行一次任务的定时任务,将任务定义到Linux系统的定时计划计划器中。
cron语句
cron语句cron语句是一种用于定时执行任务的语法,常用于Linux系统中,下面是一些常见的cron语句示例:1. 每天凌晨1点执行一次任务:```0 1 * * * command```该语句表示在每天的凌晨1点,执行指定的命令。
2. 每周一早上8点执行一次任务:```0 8 * * 1 command```该语句表示在每周的周一早上8点,执行指定的命令。
3. 每隔5分钟执行一次任务:```*/5 * * * * command```该语句表示每隔5分钟,执行指定的命令。
4. 每月的1号和15号的中午12点执行一次任务:```0 12 1,15 * * command```该语句表示在每个月的1号和15号的中午12点,执行指定的命令。
5. 每天的上午9点到下午6点,每隔30分钟执行一次任务:```*/30 9-18 * * * command```该语句表示在每天的上午9点到下午6点之间,每隔30分钟,执行指定的命令。
6. 每个月的最后一天的晚上10点执行一次任务:```0 22 L * * command```该语句表示每个月的最后一天的晚上10点,执行指定的命令。
7. 每隔2小时执行一次任务,从早上8点开始:```0 8-20/2 * * * command```该语句表示从早上8点开始,每隔2小时执行一次指定的命令,直到晚上8点。
8. 每周一至周五的上午10点执行一次任务:```0 10 * * 1-5 command```该语句表示在每个周一至周五的上午10点,执行指定的命令。
9. 每个季度的第一个月的1号的凌晨3点执行一次任务:```0 3 1 */3 * command```该语句表示在每个季度的第一个月的1号的凌晨3点,执行指定的命令。
10. 每小时的第10分钟执行一次任务:```10 * * * * command```该语句表示在每个小时的第10分钟,执行指定的命令。
这些是一些常见的cron语句示例,通过设置不同的时间和日期,可以实现灵活的定时任务调度。
linux中cron用法
linux中cron用法引言概述:Linux中的cron是一个非常重要的工具,它可以帮助我们自动化执行任务。
无论是系统维护还是日常工作,cron都能够提高效率和准确性。
本文将详细介绍Linux中cron的用法,包括设置定时任务、编辑cron表达式、查看和管理任务等。
正文内容:1. 设置定时任务1.1. 使用crontab命令:通过crontab命令可以编辑和管理用户的cron表。
可以使用crontab命令创建、编辑和删除定时任务。
1.2. 编辑cron配置文件:在Linux系统中,还可以直接编辑cron配置文件来设置定时任务。
这种方法适用于需要同时管理多个用户的定时任务。
2. 编辑cron表达式2.1. 分钟和小时字段:cron表达式中的分钟字段和小时字段分别用来指定任务执行的分钟和小时。
可以使用星号表示任意值,也可以使用逗号分隔多个值。
2.2. 日期和月份字段:除了分钟和小时字段,cron表达式还包括日期和月份字段,用来指定任务执行的日期和月份。
可以使用星号、逗号和连字符来设置多个值或范围。
2.3. 星期字段:在一些情况下,我们可能还需要指定任务在特定的星期几执行。
星期字段可以用来设置任务的执行日期。
同样,可以使用星号、逗号和连字符来设置多个值或范围。
3. 查看和管理任务3.1. 查看当前用户的定时任务:可以使用crontab命令的-l选项来查看当前用户的定时任务列表。
3.2. 查看所有用户的定时任务:root用户可以使用crontab命令的-u选项来查看其他用户的定时任务列表。
3.3. 管理任务:除了查看定时任务,我们还可以使用crontab命令的-e选项来编辑任务,使用-r选项来删除任务。
总结:在Linux中,cron是一个非常强大的工具,它可以帮助我们自动化执行任务。
本文从设置定时任务、编辑cron表达式、查看和管理任务等方面详细介绍了Linux 中cron的用法。
通过合理使用cron,我们可以提高工作效率和准确性,使得任务的执行更加方便和自动化。
linux下cron设置规则
linux下cron设置规则**一、Cron简介**Cron是Linux系统中的一款定时任务调度工具,它可以用于自动执行周期性的任务,如每天定时备份数据库、定时发送邮件等。
Cron的工作原理是根据设定的规则,在指定的时间执行相应的命令或脚本。
**二、如何在Linux下设置Cron任务**1.打开终端,使用`crontab`命令编辑Cron配置文件。
```crontab -e```2.进入Cron配置文件后,使用编辑器(如Vim、Nano等)编写Cron任务。
每个任务占一行,格式如下:```分钟时分日月周命令```例如:每天凌晨1点执行某个脚本,可以这样编写:```0 1 * * * /path/to/your/script.sh```3.保存并退出编辑器,Cron任务就会生效。
**三、Cron表达式详解**Cron表达式用于指定任务执行的时间,格式如下:```分钟时分日月周命令```- 分钟:0-59之间的整数,可以省略(默认为0)- 小时:0-23之间的整数- 日期:1-31之间的整数,可以省略(默认为1)- 月份:1-12之间的整数,可以省略(默认为1)- 周:0-7之间的整数,表示星期几(0为星期日,1为星期一,依此类推)**四、举例:常用Cron任务的设置**1.每天凌晨1点自动备份数据库:```0 1 * * * /path/to/your/backup_script.sh```2.每天定时发送邮件:```0 17 * * * /path/to/your/send_email_script.sh```3.每周五下午3点整执行某个任务:```0 15 * * 5 /path/to/your/task_script.sh```**五、管理Cron任务**1.查看已配置的Cron任务:```crontab -l```2.添加Cron任务:```crontab -e```3.删除Cron任务:```crontab -r <filename>```4.修改Cron任务:```crontab -e```**六、总结**Cron是Linux系统中非常实用的定时任务调度工具。
crond 用法
crond 用法"crond用法"指的是在Linux系统中使用crond工具来进行定时任务的管理和执行。
本文将详细介绍crond的基本概念、配置文件、常用命令和示例,帮助读者理解和熟悉crond的用法。
第一部分:基本概念1.1 crond的定义crond是一个定时任务管理器,可以在预设的时间间隔内执行各种任务。
它基于时间的触发器,通过配置文件指定任务执行的时机,并适用于各种任务的自动化处理。
1.2 cron的工作原理crond以固定的时间间隔不断扫描系统中的配置文件,检查任务是否到达执行时间。
若任务时间匹配,则由crond负责启动对应的执行程序,并在后台执行任务。
第二部分:配置文件2.1 crontab文件的格式crontab文件是用来配置定时任务的文件,其中包含了任务的执行时间和要执行的命令或脚本。
其格式如下:分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期几(0-7) 要执行的命令2.2 用户级别和系统级别的crontab文件在Linux系统中,每个用户都有自己的crontab文件,用于管理个人的定时任务。
此外,还有一个系统级别的crontab文件,用来管理系统所有用户的定时任务。
第三部分:常用命令3.1 crontab命令简介- crontab -e:编辑当前用户的crontab文件。
- crontab -l:列出当前用户的crontab文件。
- crontab -r:删除当前用户的crontab文件。
3.2 重启crond服务在修改crontab文件后,需要重启crond服务以使更改生效。
可以使用以下命令来重启crond服务:sudo systemctl restart crond第四部分:示例与应用4.1 示例一:每日备份数据库假设我们需要每日自动备份数据库,可以在crontab文件中添加以下内容:0 2 * * * /usr/bin/mysqldump -u root -p123456 mydb >/tmp/db_backup_`date +\Y\m\d`.sql上述命令表示每天凌晨2点使用mysqldump备份数据库,并将备份文件以日期命名保存在/tmp目录下。
cron规则
cron规则Linux 的 cron 是一种定时任务的工具,用于定期执行指定的任务。
它可以在特定的时间或特定的频率下自动执行所需要完成的任务,而无需人工干预。
Cron 规则是用来控制 cron 任务的配置文件,通过这种规则,可以灵活地指定 cron 的时间和任务参数,达到自动执行指定任务的目的。
Cron 规则有两种形式:一种是“简单形式”,即简单地指定一个时间表达式来定义 cron 执行的时间;另一种是“复杂形式”,即可以根据高级的模式、参数和条件来定义 cron 的时间和任务参数。
简单形式的 Cron 规则由 6 个字段(minute、hour、day of month、month、day of week 和 command)组成,其中各个字段用空格隔开。
minute 字段代表 cron 任务执行的分钟,hour 字段代表cron 任务执行的小时,day of month 和 month 字段分别代表 cron任务执行的日期和月份,day of week 字段代表 cron 任务执行的星期几,command 字段指定要执行的任务名称。
复杂形式的 Cron 规则可以根据高级的模式、参数和条件来定义cron 的时间和任务参数,使得 Cron 能够根据不同的时间来执行指定的任务。
复杂形式的 Cron 规则有三种形式:日期格式(date format)、星期格式(week format)和混合格式(mixed format)。
日期格式可以指定特定的月份或者特定的日期;星期格式可以指定特定的星期几;混合格式则可以指定特定的月份、日期和星期几,以此类推。
总之,Cron 规则是用来控制 cron 任务的配置文件,简单形式由 6 个字段组成,复杂形式则可以根据高级的模式、参数和条件来定义 cron 的时间和任务参数。
Cron 规则可以帮助我们更加方便地定期执行任务,有效地提高工作效率。
如何使用Cron在Linux上设置定时任务
如何使用Cron在Linux上设置定时任务Cron是Linux系统中一个非常有用的工具,它可以帮助我们在特定的时间间隔或固定的时间执行任务。
在本文中,我们将会学习如何使用Cron在Linux上设置定时任务。
首先,我们需要了解Cron的基本语法。
Cron的语法由5个字段组成,分别表示分钟、小时、日期、月份和星期几。
以下是Cron的基本格式:```* * * * * command```每个字段用空格分隔,可以是具体的数值、范围、递增步长或通配符。
其中,通配符`*`代表所有可能的值。
接下来,我们看一些示例来帮助我们更好地理解Cron的用法。
1. 在特定时间运行任务:我们可以使用Cron在特定的时间运行任务。
比如,我们想要在每天的凌晨3点运行一个脚本,我们可以使用以下Cron表达式:```0 3 * * * command```这个表达式的意思是,在每天的3点整执行`command`命令。
2. 在固定时间间隔运行任务:除了在特定时间运行任务,我们也可以使用Cron在固定的时间间隔内运行任务。
比如,我们想要每隔5分钟运行一次脚本,我们可以使用以下Cron表达式:```*/5 * * * * command```这个表达式的意思是,每隔5分钟执行一次`command`命令。
3. 指定多个值:在Cron中,我们也可以指定多个值来运行任务。
比如,我们想要在每个月的1号和15号的凌晨2点运行一个脚本,我们可以使用以下Cron表达式:```0 2 1,15 * * command```这个表达式的意思是,在每个月的1号和15号的凌晨2点执行`command`命令。
4. 使用范围和递增步长:除了指定具体的数值,我们也可以使用范围来运行任务。
比如,我们想要在每个周一至周五的9点到17点之间,每隔1小时运行一次脚本,我们可以使用以下Cron表达式:```0 9-17/1 * * 1-5 command```这个表达式的意思是,在每个周一至周五的9点到17点之间,每隔1小时执行`command`命令。
常用定时任务cron表达式
常用定时任务cron表达式Cron表达式是Linux和Unix下用来安排定期任务的一种标准格式。
很多人对于Cron表达式不是很熟悉,其实掌握一些常用的Cron表达式可以方便我们安排定时任务。
下面依次介绍几种常用的Cron表达式。
第一种:每分钟执行一次这是最简单的Cron表达式,表示每分钟执行一次。
它的表达式为:* * * * *。
解释一下,这里有五个*,分别代表分钟、小时、日期、月份和星期几。
五个*表示每个时间都匹配,所以这个表达式可以执行每一分钟。
第二种:每小时的第X分钟执行有时候我们需要指定在每个小时的第x分钟执行任务,比如每个小时的10分。
这时候,我们可以使用”0 10 * * *”的表达式。
解释一下,这里“0”表示分钟为0,另外四个*表示匹配每个小时,匹配所有日期,匹配所有月份,匹配所有星期几。
这个表达式表示每小时的0分时刻执行一次定时任务。
第三种:每天的X时X分执行如果我们需要指定在每天的特定时间执行任务,可以使用”0 20 * * *”表达式,表示每天晚上8点执行任务。
解释一下,这里“0”表示分钟为0,”20”表示小时数为20,另外三个*标识每月的所有日期,每周的所有星期,所以表达式定义了每天晚上8点整执行。
第四种:每周的某一天执行我们还可以指定每周的某几天的某一时刻执行定时任务。
比如,我们需要每周的周一至周五的上午12:10执行任务,可以使用表达式“10 12 * * 1-5”。
解释一下,这里“10”表示分钟数,”12”表示小时数,表示执行任务的时刻为每天的12:10分,在星期一至星期五都执行。
第五种:每月的特定日期的特定时间执行如果我们需要在每个月的特定日期的特定时间执行定时任务,可以使用表达式“0 07 12 15 *”表示每个月的15号上午7点执行任务。
解释一下,这里“0”表示分钟数为0,”7”表示小时数为7,”12”表示匹配12月份,匹配每月的15号,另外一个*代表匹配每个星期的所有天数。
