linux给用户写任务计划,Linux系统计划任务

计划任务

计划任务

简介

一次性调度执行at

循环调度执行cron

计划任务

简介

计划任务主要是做一些周期性的任务,

目前最主要的用途是定期备份数据。

计划任务相当于闹钟

什么时候需要使用定时任务

企业工作中经常需要将某些命令或脚本放入计划任务中自动执行;企业中需要定期执行服务器之间的数据同步操作;

Linux中怎样使用计划任务

在Linux中有两种使用方法:

一次性at计划任务 :Schedule one-time tasks with at.

周期性执行cron计划任务(常用) :Schedule recurring jobs with cron.

一次性调度执行at

语法:at < TIMESPEC>

< TIMESPEC >示例 :

[root@localhost~]# at now +5min

五分钟后

[root@localhost~]# teatime tomorrow (teatime is 16:00)

下午茶

[root@localhost~]# noon +4 days

第四天中午

[root@localhost~]# 5pm august 3 2020

2020年8月3日下午5点

[root@localhost~]# 4:00 2019-11-27

某年某月某日某时

示例

设置一个定时创建用户的任务

[root@localhost ~]# at now +1min

at> useradd www

at> CTRL +D 输入完毕,提交任务

job 3 at Wed Aug 5 20:34:00 2020

查询任务

[root@localhost ~]# atq 查询 -q

3Wed Aug 5 20:34:00 2020 a root

验证

root@localhost ~]# id www

uid=1008(www) gid=1008(www) 组=1008(www)

循环调度执行cron

简介

cron的概念和crontab是不可分割的。

crontab是一个命令,常见于Unix和Linux的操作系统之中

用于设置周期性被执行的指令。

该命令从标准输入设备读取指令,并将其存放于“/etc/crontab”文件中,以供之后读取和执行。

查看进程的状态

[root@locahost ~]# systemctl status crond.service

[root@localhost ~]# ps aux |grep crond

root 550 0.0 0.0 126300 1648 ? Ss 10:05 0:00 /usr/sbin/crond -n

crond程序运行是计划任务执行的根本

cron的示例

1.管理方式

(1)创建计划

“crontab -e” Edit jobs for the current user

(2)查询计划

“crontab -l” List the jobs for the current user

管理员可以使用 -u username, 去管理其他用户的计划任务

(3)删除计划

“crontab -r” Remove all jobs for the current users.

2.计划任务存储位置

[root@localhost ~]# ls /var/spool/cron/

3.语法格式 Job format

a2d50140f7ba7efaca7d96cd76afd98d.png

分 时 日 月 周

命令活脚本程序

0 * * * */mysql_back.sh

每小时的0分执行

* /5 * * * */mysql_back.sh

每五分钟执行

0 2 1,4,6 * * /mysql_back.sh

每月的1,4,6日的2点整执行

0 2 5-9 * * /mysql_back.sh

每月5日到9日的两点整执行

* * * * * /mysql_back.sh

每分钟执行

0 2 * * * /mysql_back.sh

每天两点整执行

0 2 14 * * /mysql_back.sh

每月14号的2点整执行

0 2 14 2 * /mysql_back.sh

2月14日2点整执行

0 2 * * 5 /mysql_back.sh

每月的周五,两点执行,不写月日,仅周生效

0 2 2 6 5 /mysql_back.sh

书写月和日,月或日,月日周均生效,6月2日的两点整执行,6月的周五两点整执行

示例

分 时 日 月 周

命令或脚本程序

00 02 * * * ls

每天2:00整

00 02 1 * * ls

每月1号2:00整

00 02 14 2 * ls

每年2月14号2:00整

00 02 * * 7 ls

每周日2:00整

00 02 * 6 5 ls

每年6月的周五2:00整 (特殊)

00 02 14 * 7 ls

每月14号2:00整,每周日2:00整,这两个时间都执行

00 02 14 2 7 ls

每年2月14号2:00整,2月每周日2:00整,这两个时间都执行

示例

每个一分钟执行创建文件的计划任务

1.准备创建脚本文件

[root@localhost~]# vim /root/1.sh

输入以下内容 /usr/bin/touch /root/`date +%F-%H-%M-%S`.txt

[root@localhost~]#chmod +x /root/1.sh

2.编写任务计划

[root@localhost~] # crontab -e

输入以下内容

* * * * * /root/1.sh

3.查看创建结果

[root@localhost~] # ls -l /root/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值