cron on linux (crontab 的用法 总结做个笔记)

本文详细介绍了cron定时任务的功能及应用场景,包括定时备份数据、服务器状态检查等,并提供了cron配置文件的编辑方法及其常见示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1. cron 的用途:cron 有很广泛的用途,比如每天的定时备份数据,定时的服务器网络状态,运行状态的检查,定时发送邮件等等。

2. cron:时钟守护进程。cron进程每分钟会扫描crontab,检查crontab中的每一行,如果时间能够匹配,此行中的命令就会执行。

3. cron的使用

(1)编辑器的选择

$ export EDITOR=vi(or nano)

(2)编辑crontab

$ crontab -e

# m h  dom mon dow   command(#标识注释)

minute of the hour:分钟(0-59)

hour of the day:时(0-23)

day of the month:日期(1-31)

month of the year:月份(1-12)

day of the week:星期(0-6)

command line:命令

(3)显示crontab内容

$ crontab -l

(4)删除当前用户的crontab

$ crontab -r

或者 此行前加 #

 

4. Crontab Examples

(*) 为值域范围, 第三个 '1-31' (days of the month), 第四个 '1-12' (months of the year), and 第五个 '0-6' (周日0).

 

#每月1号,11号,21号下午10点半运行

30 22 1,11,21 * * /usr/bin/top -n 1 -b -S

#每天中午12点执行

0 12 * * * /usr/bin/top -n 1 -b -S

 

#前五个域值可为:values, lists, ranges, or ranges with step values.

#每天0,6,12,18点执行

0 0,6,12,18 * * * /usr/bin/top -n 1 -b -S

#可简写为:

0 */6 * * * /usr/bin/top -n 1 -b -S

 

#1,4,7,10,13,16,19,22,25,28分钟运行

1-30/3 * * * * /usr/bin/top -n 1 -b -S

 

#周一到周五每天0,6,12,18点执行

0 0,6,12,18 * * 1-5 /usr/bin/top -n 1 -b -S

 

#周一到周五每天0,6,9-15,18点执行

0 0,6,9-15,18 * * 1-5 /usr/bin/top -n 1 -b -S

 

#隔5分钟执行

*/5 * * * * /usr/bin/top -n 1 -b -S

 

#隔一天执行

0 12 */2 * * /usr/bin/top -n 1 -b -S

 

 

5. cron的环境变量设定

Cron 仅仅继承了当前用户的部分环境变量如, HOME, LOGNAME and SHELL.有时候,cron执行失败,可能是由于环境变量的原因。所以尽可能的使用完整的路径,如上 /usr/bin/top。

 

6. cron输出重定向

*/10 * * * * /home/testuser/test.sh > /home/testuser/test.log

 

*/10 * * * * /home/testuser/test.sh >> /home/testuser/test.log

 

*/10 * * * * /home/testuser/test.sh >> /home/testuser/test.log 2>&1

 

*/10 * * * * /home/testuser/test.sh > /dev/null 2>&1

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值