本文共 1492 字,大约阅读时间需要 4 分钟。
crontab 是 Linux 系统中用来配置自动任务调度的强大工具。通过crontab,用户可以指定执行特定程序的时间规律,类似于个人时钟。默认情况下,crontab 命令针对当前用户生效,但如果要为其他用户配置任务需要具备相应权限。
crontab 命令的常用格式如下:
crontab [ -u user ] [ -e ] [ -l ] [ -r ] [ -d ] [ guide ]
crontab文件的格式为:
minute hour day month day_of_week command
其中:
每个字段可以使用以下方式指定:
**通配符:
*
:表示全部可能的时间a-b
:表示从a到b的范围(包含a和b)*/n
:表示每n个单位(分钟、小时、天等)间隔一次****具体数值:
每天早上7点执行 /bin/ls
:
0 7 * * * /bin/ls
每个月的那4号且周一至周三的早上11点:
0 11 4 * mon-wed /usr/bin/backup
查看当前crontab命令的使用方法:
$ crontab -h
记录crontab文件并重新加载:
# 假设文件名为 `my_crontab.txt`$ crontab -e < my_crontab.txt$ service cron restart
删除现有crontab并重置为默认值:
$ crontab -r
检查 cron 服务状态:
$ service cron status
启动 cron 服务:
$ service cron start
停止 cron 服务:
$ service cron stop
重启 cron 服务:
$ service cron restart
设置 cron 服务随系统启动(在一些Linux发行版中):
$chkconfig --level 35 crond on
权限问题:如果要为其他用户配置crontab,需要先切换到拥有sudo权限的用户身份。
依赖关系:在某些Linux版本中,crontab服务依赖dbus,所以需要确保dbus服务已正确配置并运行。
shell环境:crontab脚本执行时,默认只传递 USER
, HOME
, SHELL
这三个环境变量。
系统邮件:执行任务后,系统会通过邮件发送执行结果,你可以通过添加> /dev/null 2>&1
来禁止接收这些邮件。
通过以上方法,你可以轻松配置并管理Linux系统中的自动任务调度。
转载地址:http://cbwfk.baihongyu.com/