首页 > 系统相关 >linux 使用crontab 创建定时任务

linux 使用crontab 创建定时任务

时间:2023-11-29 12:32:52浏览次数:36  
标签:脚本 script crontab 任务 linux path 定时 运行

转载请注明出处:

  在服务器中需要创建一个定时任务,每天执行去清理很早之前备份的文件,所以想到在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

  先使用 select-editor 选择 编辑类型,然后再使用crontab -e 到具体的编辑器里面编辑配置文件

              

linux 使用crontab 创建定时任务_配置文件

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

0 5 * * * /path/to/command/script.sh

  crontab中经常配置运行脚本输出为:>/dev/null 2>&1,来避免crontab运行中有内容输出。

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

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

                   

linux 使用crontab 创建定时任务_shell脚本_02

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

chmod +x /path/to/script.sh

  

 



标签:脚本,script,crontab,任务,linux,path,定时,运行
From: https://blog.51cto.com/u_15535797/8614467

相关文章

  • Linux 文件查找、打包压缩及解压
    1.文件查找(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。(2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。(3)which查看可执行文件的位置,只有设置了环境变量的程序才可以用(4)wherei......
  • 运维初级实践——Linux系统命令教程
    区块链运维工程师在Linux环境中常用的命令、快捷键,以及安装软件和文件管理的最佳实践。1.常用Linux命令1.1文件和目录操作ls:列出目录内容cd:更改目录mkdir:创建新目录rm:删除文件或目录cp:复制文件或目录mv:移动或重命名文件或目录#列出当前目录的内容ls......
  • [转]Linux 安装 MySQL 经验
    也可以参考:https://www.cnblogs.com/z5337/p/16514955.html本文内容参考:https://www.cnblogs.com/syncmr/p/11991050.html在Centos7.9安装MySQL5.7步骤记录:1、新建目录,保存安装包cdhomemkdirinstall_packetcd/home/install_packet2、下载mysql5.7rpm源wgeth......
  • Linux进程管理
    每个用户均可同时运行多个程序。为了区分每一个运行的程序,Linux给每个进程都做了标识,称为进程号(processID),每个进程的进程号是唯一的。Linux给每个进程都打上了运行者的标志,用户可以控制自己的进程:给自己的进程分配不同的优先级,也可以随时终止自己的进程。进程从执行它的用户......
  • Linux文件操作(学习笔记)
    文件操作1新增文件(touch)toucha.txt//在当前目录下创建名为a的txt文件(文件不存在),如果文件存在,将文件时间属性修改为当前系统时间2删除文件(rm)rm文件名//删除当前目录下的文件rm-f文件名//删除当前目录的的文件(不询问)3编辑文件(vi、vim)vi文件名//打开......
  • linux diff求两个文件的差集
    awk从文本中过滤出需要的ipqueryId_20231109214653_ipBatchQueryResult.json{"id":0,"ip":"121.204.216.130","type":1,"domain":"","agreement":"","mode":"","postalCode......
  • Linux 解压tar gz bz zip
    #Linux中如何退出r的帮助文档要退出帮助文档,请按"q"键,即按下小写字母"q"键#########解压命令tarxvfFileName.tartarzxvfFileName.tar.gz#z不可随便乱加gunzipFileName.gzgzip-dFileName.gztarzxvfFileName.tar.gztarjxvfFileName.tar.bz2tarjxvfFileName.tar.bzt......
  • Linux yum管理器
    1、yum介绍Yum(全称为YellowdogUpdater,Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找......
  • Linux存储管理
    Linux存储管理涉及到文件系统、磁盘空间、挂载和分区等方面。以下是关于Linux存储管理的小结:1. **文件系统:** Linux支持多种文件系统,如Ext4、XFS、Btrfs等。选择适当的文件系统取决于用途和性能需求。2. **磁盘分区:** 使用工具如`fdisk`或`parted`对磁盘进行分区,将磁盘划分为......
  • Linux、进程优先级
    Linux、进程优先级在Linux系统中,每个进程都有一个优先级,该优先级决定了进程在系统中使用CPU资源的权重。进程的优先级通常是动态调整的,取决于多个因素。以下是一些与Linux进程优先级相关的关键概念:1. **Nice值:** 进程的Nice值是一个表示进程优先级的数值。Nice值的范围通常在-20......