计划任务

1.简介

//作用:计划任务主要是做一些周期性的任务
  目前最主要的用途就是定期备份数据

//分类:
一次性调度任务at
  Schedule one-time tasks with at

循环调度执行cron
  Schedule recurring jobs with cron

2.一次性调度执行

//语法格式:
at <TIMESPEC>

<TIMESPEC>示例:now +5min
                teatime tomorrow(teatime is 16:00)
                noon +4days
                5pm august 3 2029
                4:00 2024-7-9

//例:初识一次性任务
1.设置一个定时创建用户的任务
  #at now +1min
  at> useradd test001
  at> <EOT>           //ctrl+d输入完成,提交任务
  job 1 at Tue Jul  9 15:40:00 2024

2.查询任务
  #atq

3.验证结果
  #id test001
  能查询到信息,说明成功

3.循环调度执行

//简介:
cron的概念和crontab是不可分割的
crontab是一个命令,常见于Unix和Linux的操作系统之中
用于设置周期性被执行的指令
该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行

//查看进程状态
# systemctl status crond.service
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since 二 2024-07-09 11:18:45 CST; 4h 38min ago
 Main PID: 57188 (crond)
    Tasks: 1
   CGroup: /system.slice/crond.service
           └─57188 /usr/sbin/crond -n

7月 09 11:18:45 localhost.localdomain systemd[1]: Started Command Scheduler.
7月 09 11:18:45 localhost.localdomain crond[57188]: (CRON) INFO (RANDOM_DELAY will...)
7月 09 11:18:49 localhost.localdomain crond[57188]: (CRON) INFO (running with inot...)
7月 09 11:18:49 localhost.localdomain crond[57188]: (CRON) INFO (@reboot jobs will...)
Hint: Some lines were ellipsized, use -l to show in full.

# ps aux|grep crond
root      57188  0.0  0.1 126280  1436 ?        Ss   11:18   0:01 /usr/sbin/crond -n

//cron示例
计划任务存储位置:# ls /var/spool/cron/

管理方式:
    创建计划:crontab -e Edit jobs for the current user
    查询计划:crontab -l List the jobs for the current user
              管理员可以使用 -u username,去管理其他用户的计划任务
    删除计划:crontab -r Remove all jobs for the current users

语法格式 Job format:
    # .---------------- minute (0 - 59)
    # | .------------- hour (0 - 23)
    # | | .---------- day of month (1 - 31)
    # | | | .——————month (1 - 12) OR jan,feb,mar,apr ...
    # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    # | | | | |
    # * * * * * command

    说明:分 时 日 月 周 命令或者脚本程序(六个部分用空格隔开)

    1、特定值
    2、每..  *  
    3、离散值 #,#,#,#
    4、连续的值 #-#
    5、指定步长 /#  每隔#,要能整除

如果command里带有%,需要使用反斜杠转义。
command也可使用脚本代替

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值