crontab笔记

crontab是在unix/linux系统上定时(循环)执行某个任务的程序使用cron服务,cron与crond是一样的,有的系统不用,名称不同。

service crond status       查看cron服务状态

service crond start          启动cron服务

crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:

1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存。
2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置。

Crontab是UNIX系统下的定时任务触发器,其使用者的权限记载在下列两个文件中: 
/etc/cron.deny         该文件中所列的用户不允许使用Crontab命令     
/etc/cron.allow        该文件中所列的用户允许使用Crontab命令 
/var/spool/cron/      是所有用户的crontab文件

Crontab命令的格式为:crontab –l|-r|-e|-i [username],其参数含义如表一:

crontabl –l    显示用户的Crontab文件的内容
crontabl -ri   删除用户的Crontab文件前给提示
crontabl -r    从Crontab目录中删除用户的Crontab文件 
crontabl -e    编辑用户的Crontab文件

定时任务设置格式:

f1 f2 f3 f4 f5 program

其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。 
当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其余类推 
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推 
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推 
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推

例子:

周一到周五每天下午 5:00 寄一封信给 [email protected] :

0 17 * * 1-5 mail -s "hi" [email protected]  /dev/null 2>&1

0 */2 * * * /sbin/service httpd restart  意思是每两个小时重启一次apache

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

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

时间: 2024-10-12 18:04:02

crontab笔记的相关文章

Linux之crontab笔记

引用竹子博客 前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当

Linux 计划任务 Crontab 笔记与总结(2)Crontab 的基本组成与配置

[Crontab 的基本组成] ① 系统服务 CROND:每分钟都会从配置文件刷新定时任务 ② 配置文件 :文件方式设置定时任务 ③ 配置工具 crontab:用途调整定时任务 [配置文件的配置文件格式] * * * * * COMMAND 第一个 * :分钟 0 - 59,* 表示每分钟都要执行 第二个 * :小时 0 - 23 第三个 * :日期  1 - 31 第四个 * :月份 1 - 12 第五个 * :星期 0 - 7(0 或 7 表示星期天) [例1]每晚的 21:30 重启 Ap

centos7 crontab笔记

1.crontab相关命令 语法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr] 参数: -e 编辑该用户的计时器设置. -l 列出该用户的计时器设置. -r 删除该用户的计时器设置. -u<用户名称> 指定要设定计时器的用户名称. 2.启动crontab /bin/systemctl restart crond.service #启动服务 /bin/systemctl reload crond.service

Linux 计划任务 Crontab 笔记与总结(5)crontab 常见错误与案例

① 环境变量 cd ~ pwd 就会到你登陆的那个用户的根目录下 ls -a 能够查看到 .bash_profile 这个文件 vim .bash_profile 这里面设置了一些环境变量. 可以设置一个新的环境变量,在文件末尾加上: APPDIR=/etc export APPDIR :wq! 保存退出 source .bash_profile echo $APPDIR 如果在计划任务中使用到了全局变量,例如 crontab -e 写入 */1 * * * * echo $APPDIR >>

Linux 计划任务 Crontab 笔记与总结(3)Crontab 配置文件

[全局(系统)配置文件] /etc/crontab Linux 主要的配置文件都在 etc 目录下. cd /etc ls cron* vim crontab 进入 cron.d(服务) cd cron.d 使用 cat 命令查看 sysstat 文件(cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的 ) cat sysstat 会发现,查看的内容和 crontab -l 时的内容很相似 在 crontab 载入配置文件的时候,会把 cron.d 下面的文件里面的配置信

Linux 计划任务 Crontab 笔记与总结(4)crontab 的日志

/var/log/cron 文件保存 cron 的任务执行记录 cd /var/log/ ls -l cron* 会发现每天都会有 cron 日志的变化 使用 tail -f cron 能够查看今天的 cron 的日志: 使用 cat /etc/crontab 可以看到 MAILTO=root 表示在执行某一个 crontab 命令或者任务的时候,都会生成一个记录信息发送给 root 用户 查看 root 的 mail [[email protected] cron]# cd /var/spoo

关于crontab笔记

如下所示,一般crontab文件里面的定时任务格式如下所示: 59 23 * * * /home/oracle/scripts/alert_log_archive.sh >/dev/null 2>&1 crontab 文件中每个条目中各个域的意义和格式: 第一列 分钟: 1——59 第二列 小时: 1——23(0表示子夜) 第三列 日 : 1——31 第四列 月 : 1——12 第五列 星期: 星期0——6(0表示星期天,1表示星期一.以此类推) 第六列 要运行的命令 我们暂且用C1.

crontab笔记-1

例行工作安排主要指令有at和crontab at指令语法: [[email protected] ~]# at [-mldv] TIME [[email protected] ~]# at -c 工作号码 选项与参数: -m :当 at 的工作完成后,即使没有输出讯息,亦以 email 通知使用者该工作已完成. -l :at -l 相当于 atq,列出目前系统上面的所有该用户的 at 排程; -d :at -d 相当于 atrm ,可以取消一个在 at 排程中的工作; -v :可以使用较明显的时

crontab笔记-2

除了at.crontab外,batch和anacron也和例行工作相关. batch和at作用基本一致,主要区别是batch是当cpu工作负载小于0.8时才进行后续的工作安排,从而避免cpu100%负载状态时还要进行例行工作. 而anacron的作用是配合 /etc/anacrontab 的设定,可以唤醒停机期间系统未进行的 crontab 任务. /etc/crontab 配置文件内容: [[email protected] ~]# cat /etc/crontab SHELL=/bin/ba