0

0

Linux怎么设置定时任务_Linux系统crontab语法详解与实例【方法】

穿越時空

穿越時空

发布时间:2026-01-03 14:23:02

|

133人浏览过

|

来源于php中文网

原创

Linux中配置定时任务有五种方法:一、crontab -e编辑用户级任务;二、直接修改/etc/crontab配置系统级任务;三、将脚本放入/etc/cron.daily等目录由系统自动调度;四、使用systemd timer实现更精确控制;五、通过脚本动态生成并安装crontab条目。

linux怎么设置定时任务_linux系统crontab语法详解与实例【方法】

如果您希望在Linux系统中自动执行特定任务,例如定期备份文件或清理日志,则需要通过crontab配置定时任务。以下是实现此目标的多种方法:

一、使用crontab -e编辑当前用户定时任务

该方法直接修改当前用户的crontab文件,适用于个人常用任务,所有任务以当前用户权限运行。

1、打开终端,输入命令:crontab -e

2、首次运行时,系统可能提示选择默认编辑器,输入对应数字(如1选择nano)并按回车。

3、在打开的编辑器中,按crontab语法添加一行任务,例如:0 2 * * * /bin/bash /home/user/backup.sh

4、保存并退出编辑器(nano中按Ctrl+O写入,Ctrl+X退出)。

5、验证是否添加成功,执行:crontab -l

二、向系统级crontab文件直接写入任务

该方法适用于需以root权限运行、且对所有用户生效的任务,直接编辑/etc/crontab文件,需显式指定执行用户。

1、使用sudo权限打开系统crontab:sudo nano /etc/crontab

2、在文件末尾新增一行,格式为:分 时 日 月 周 用户名 命令

3、例如每天凌晨3点以root身份执行脚本:0 3 * * * root /usr/local/bin/cleanup.sh

4、保存文件后无需重启服务,cron守护进程会自动加载变更。

三、将脚本放入系统cron目录对应子目录

该方法免去手动编辑crontab,适用于固定周期任务(如每小时、每天、每周),由系统自动按目录规则调度。

1、确认脚本具有可执行权限:chmod +x /path/to/script.sh

ProcessOn
ProcessOn

免费在线流程图思维导图,专业强大的作图工具,支持多人实时在线协作

下载

2、将脚本复制到对应目录,例如每日执行:sudo cp /path/to/script.sh /etc/cron.daily/

3、确保脚本名不含点号或特殊字符(部分发行版仅执行不含扩展名或符合命名规范的文件)。

4、系统会在预设时间(通常由/etc/anacrontab定义)调用该脚本,无需额外配置时间字段。

四、使用systemd timer替代传统crontab

该方法适用于较新Linux发行版(如CentOS 7+、Ubuntu 16.04+),提供更精确的时间控制与依赖管理能力。

1、创建service单元文件:sudo nano /etc/systemd/system/backup.service,内容包含[Unit]和[Service]节。

2、创建timer单元文件:sudo nano /etc/systemd/system/backup.timer,在[Timer]节中设置OnCalendar=值(如OnCalendar=*-*-* 02:00:00)。

3、启用timer:sudo systemctl daemon-reload,然后执行sudo systemctl enable --now backup.timer

4、检查状态:systemctl list-timers --all,确认backup.timer已列出并处于active状态。

五、通过脚本动态生成并安装crontab条目

该方法适用于批量部署场景,避免手动逐台编辑,通过标准输入重定向方式安全写入crontab。

1、先导出当前用户crontab内容:crontab -l > mycron(若为空则忽略错误)。

2、向mycron追加新任务行:echo "30 4 * * 1-5 /usr/bin/find /tmp -name '*.log' -mmin +1440 -delete" >> mycron

3、用新文件覆盖原crontab:crontab mycron

4、删除临时文件:rm mycron

相关专题

更多
数据库Delete用法
数据库Delete用法

数据库Delete用法:1、删除单条记录;2、删除多条记录;3、删除所有记录;4、删除特定条件的记录。更多关于数据库Delete的内容,大家可以访问下面的文章。

267

2023.11.13

drop和delete的区别
drop和delete的区别

drop和delete的区别:1、功能与用途;2、操作对象;3、可逆性;4、空间释放;5、执行速度与效率;6、与其他命令的交互;7、影响的持久性;8、语法和执行;9、触发器与约束;10、事务处理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

208

2023.12.29

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1345

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

700

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

773

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

571

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

545

2023.07.20

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

194

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.5万人学习

Git 教程
Git 教程

共21课时 | 2.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号