linux 使用crontab 创建定时任务

转载请注明出处:

在服务器中需要创建一个定时任务,每天执行去清理很早之前备份的文件,所以想到在linux上创建一个shell脚本,通过linux的 crontab 命令定时去执行该shell脚本,从而实现定时清理服务器文件。

crontab是Linux系统中用于调度任务的命令,它允许用户在固定的间隔时间执行命令或脚本。
特性

  • crontab可以在没有用户交互的情况下执行任务,这使得它非常适合自动化和后台任务。
  • crontab可以设置多个不同的任务,每个任务都有自己的调度时间。
  • crontab支持在特定的日期和时间运行任务,例如,你可以设置在每个月的最后一天运行一个任务。
  • crontab支持在特定的时间间隔运行任务,例如,你可以设置每小时运行一次任务。
  • crontab可以在系统重启后自动恢复任务。

使用场景

  • 系统维护:例如,定期清理系统日志,备份数据库等。
  • 数据分析:例如,定期运行数据分析脚本,生成报告等。
  • 网络任务:例如,定期检查网络连接,发送邮件通知等。

crontab命令的基本语法如下:

复制代码
*    *    *  *   *       command to be executed
-    -    -  -   -
|    |    |  |   |
|    |    |  |   +----- day of the week (0 - 6) (Sunday=0)
|    |    |  +------- month (1 - 12)
|    |    +--------- day of the month (1 - 31)
|    +----------- hour (0 - 23)
+------------- min (0 - 59)

例如,如果想每天的早上5点运行一个脚本,可以使用以下的crontab命令:

复制代码
0 5 * * * /path/to/command/script.sh

如果想在每个月的最后一天运行一个脚本,可以使用以下的crontab命令:

复制代码
0 0 1 * * /path/to/command/script.sh

每小时运行一次脚本

复制代码
0 * * * * /path/to/command/script.sh

要编辑crontab文件,你可以使用crontab -e命令。这将打开一个文本编辑器,你可以在其中添加、修改或删除任务。例如:

复制代码
crontab -e

这将打开一个文本编辑器,可以在其中添加、修改或删除任务。例如,可以添加以下行来每天的早上5点运行一个脚本:

复制代码
0 5 * * * /path/to/command/script.sh

然后保存并退出编辑器,新的任务将在下一个预定的时间点运行。

保存成功的定时任务配置文件 在/var/spool/cron/下面 :

需要注意的是,你需要给你的脚本添加执行权限,才能让 cron 执行这个脚本。

复制代码
chmod +x /path/to/script.sh

相关推荐
jugt1 小时前
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
linux·运维·centos
多多*2 小时前
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
linux·开发语言·redis·python·bootstrap·lua
何双新3 小时前
第21讲、Odoo 18 配置机制详解
linux·python·开源
21号 13 小时前
9.进程间通信
linux·运维·服务器
Gaoithe9 小时前
ubuntu 端口复用
linux·运维·ubuntu
德先生&赛先生9 小时前
Linux编程:1、文件编程
linux
程序猿小D10 小时前
第16节 Node.js 文件系统
linux·服务器·前端·node.js·编辑器·vim
多多*11 小时前
微服务网关SpringCloudGateway+SaToken鉴权
linux·开发语言·redis·python·sql·log4j·bootstrap
IT界小黑的对象12 小时前
virtualBox部署ubuntu22.04虚拟机 NAT+host only 宿主机ping不通虚拟机
linux·运维·服务器
SilentCodeY12 小时前
Ubuntu 系统通过防火墙管控 Docker 容器
linux·安全·ubuntu·系统防火墙