linux如何执行定时任务
转自: https://www.cnblogs.com/warm-stranger/p/11861744.html
一、如何创建一个脚本



二、安装crontab
三、开启crontab服务
四、设置需要执行的脚本
配置定时任务有两种方式,一种是使用crontab -e编辑定时任务,另一种是直接编辑/etc/crontab文件:
方法一:使用crontab -e编辑定时任务
这样编辑属于用户自定义的,会被写到/var/spool/cron目录下,生成一个和用户名一致的文件,问价内容就是我们编辑的定时脚本。如下:
方法二:直接编辑/etc/crontab文件
直接编辑 vim /etc/crontab ,默认的文件形式如下:
前四行是有关设置cron任务运行的环境变量。SHELL变量的值指定系统使用的SHELL环境(该样例为bash shell),PATH变量定义了执行命令的路径。
文件/etc/crontab中每行任务的描述格式如下,其实就是cron表达式:
minute hour day month dayOfWeek command
minute - 从0到59的整数
hour - 从0到23的整数
day - 从1到31的整数 (必须是指定月份的有效日期)
month - 从1到12的整数 (或如Jan或Feb简写的月份)
dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)
command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)
root表示以root用户身份来运行
run-parts表示后面跟着的是一个文件夹,要执行的是该文件夹下的所有脚本
对于以上各语句,星号(*)表示所有可用的值。例如*在指代month时表示每月执行(需要符合其他限制条件)该命令。
整数间的连字号(-)表示整数列,例如1-4意思是整数1,2,3,4
指定数值由逗号分开。如:3,4,6,8表示这四个指定整数。
符号“/”指定步进设置。“/<interger>”表示步进值。如0-59/2定义每两分钟执行一次。步进值也可用星号表示。如*/3用来运行每三个月份运行指定任务。
最终配置如下,每分钟执行一次:
定时打印结果如下:
总结:
(系统级)做系统级配置我们会直接配置/etc/crontab
(用户级)一般还是建议大家使用crontab -e,这样系统也会帮着检查我们配置的脚本语法。
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!