Linux系统设置定时任务
在平常的工作中,经常会遇到一些例行任务,需要每天定时运行。解决这类问题就可以使用crontab命令,下面一起来看一下~
首先需要启动crontab服务
service crond start #启动服务
service crond stop #关闭服务
service crond restart #重启服务
service crond reload #重新载入配置
service crond stop #关闭服务
service crond restart #重启服务
service crond reload #重新载入配置
然后使用crontab -e进行编辑,然后进行例行任务的编辑,之后保存退出即可。
具体的格式说明如下:
每一行的格式为:分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
值得注意的是,在crontab中,无论是命令还是文件的路径都要写全,否则不认。
比如要每天6点执行一个/home/run/test.sh的脚本,可以配置如下:
0 6 * * * /sbin/sh /home/run/test.sh
或者
0 6 * * * cd /home/run && /bin/sh test.sh
这里需要注意的是,test.sh脚本中的命令也需要使用全路径,否则crontab找不到的。
如果还想有一些其他的需求,比如保留输出可以将输出重定向,与正常的脚本运行没有区别
0 6 * * * cd /home/run && /bin/sh test.sh > log
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架