linux系统计划任务
at | crontab |
---|---|
一次性计划任务 | 周期性计划任务 |
摘要:linux系统中,可以通过crontab和at两种命令实现计划任务;
计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据.
at 一次性计划任务
yum install at -y 下载at
systemctl restart atd 运行at
systemctl enable atd 设置开机自启
- 使用格式:
at +时间- 查看计划任务:
at -l
atq- 查看计划任务内容:
at -c jobid- 删除计划任务:
atrm jobid- 创建计划任务:
at 时间- ctrl d -->保存
演示:
╭─root@localhost.localdomain ~
╰─➤ yum install at -y #因为at不是本机自带所以需要下载at
已加载插件:fastestmirror, langpacks
... #省略加载内容
更新完毕:
at.x86_64 0:3.1.13-24.el7
完毕!
╭─root@localhost.localdomain ~
╰─➤ systemctl restart atd #运行at
╭─root@localhost.localdomain ~
╰─➤ systemctl enable atd #设置开机自启
╭─root@localhost.localdomain ~
╰─➤ at 10:00 #输入“at 时间”;开始设置at ,支持am、pm
at> touch /home/cjk #输入任务内容
at> echo "hello" >> /home/cjk<EOT> #输入完毕,按Ctrl+D保存
job 2 at Wed May 15 10:00:00 2019
╭─root@localhost.localdomain ~
╰─➤ at -l #查询at任务
2 Wed May 15 10:00:00 2019 a root #任务id+时间
╭─root@localhost.localdomain ~
╰─➤ atq #查询at任务
2 Wed May 15 10:00:00 2019 a root
╭─root@localhost.localdomain ~
╰─➤ at -c 2 #at -c 任务id 查询at任务
... #省略加载内容
touch /home/cjk
echo "hello" >> /home/cjk
marcinDELIMITER4dbc8ae5
╭─root@localhost.localdomain ~
╰─➤ atrm 2 # atrm +任务id --->删除任务
╭─root@localhost.localdomain ~
╰─➤ atq
╭─root@localhost.localdomain ~
╰─➤
crontab 周期性任务
常用选项:
-e: 编辑计划任务 edit
-l: 查看计划任务 display
-u: 指定用户 user
-r: 删除计划任务 remove
crontab文件介绍
╭─root@localhost.localdomain ~
╰─➤ cat /etc/crontab
文件内容截屏:
演示:
╭─root@localhost.localdomain ~
╰─➤ crontab -e -u du #指定du用户创建crontab
no crontab for du - using an empty one
crontab: installing new crontab
╭─root@localhost.localdomain ~
╰─➤ crontab -lu du #查看crontab
45 4 1,10,22 * * /usr/bin/systemctl restart network
*/30 18-23 * * * /usr/bin/systemctl restart network
30 2 * * 7 /usr/bin/cp /etc/fstab /tmp/fstab-`date “+\%F_\%T” `
╭─root@localhost.localdomain ~
╰─➤ crontab -eu du #打开du用户的crontab任务文件,把任务注释掉以删除的某个任务
#计划任务都会被保存在 /var/spool/cron/,文件命名就是用户名:
crontab: installing new crontab
╭─root@localhost.localdomain ~
╰─➤ crontab -lu du
#45 4 1,10,22 * * /usr/bin/systemctl restart network #用“#”把任务注释掉
*/30 18-23 * * * /usr/bin/systemctl restart network
30 2 * * 7 /usr/bin/cp /etc/fstab /tmp/fstab-`date “+\%F_\%T” ` #计划任务不识别%需用 \ 转译
╭─root@localhost.localdomain ~
╰─➤ crontab -ru du #-r删除crontab,会删除整个文件,删除所有任务;
╭─root@localhost.localdomain ~
╰─➤ crontab -lu du
no crontab for du
##最后重启crontab生效
编写计划任务实例:
实例1、每月1、10、22日的4:45重启network服务
45 4 1,10,22 * * /usr/bin/systemctl restart network
实例2、每周六、周日的1:10重启network服务
10 1 * * 6,7 /usr/bin/systemctl restart network
实例3、每天18:00至23:00之间每隔30分钟重启network服务
*/30 18-23 * * * /usr/bin/systemctl restart network
实例4、每隔两天的上午8点到11点的第3和第15分钟执行一次重启
3,15 8-11 */2 * * /usr/sbin/reboot
实例5、每周日凌晨2点30分,运行cp命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-mm-ss;
30 2 * * 7 /usr/bin/cp /etc/fstab /tmp/fstab-`date “+\%F_\%T”`
实例6、一月一号的4点重启smb
0 4 1 1 * /usr/bin/systemctl restart smb #4点钟只执行一次命令,正确答案;
* 4 1 1 * /usr/bin/systemctl restart smb #四点到五点执行了60次命令,错误答案:
实例7、晚上11点到早上7点之间,每隔一小时重启smb
0 23-0/1,1-7/1 * * * /usr/bin/systemctl restart smb
0 23,0,1,2,3,4,5,6,7 * * * /usr/bin/systemctl restart smb
实例8、每一小时重启smb
0 * * * * /usr/bin/systemctl restart smb
linux系统计划任务的更多相关文章
- linux系统的任务计划crontab使用详解
linux系统的任务计划crontab使用详解 其实大部分系统管理工作都是通过定期自动执行某一个脚本来完成的,那么如何定期执行某一个脚本呢?这就要借助linux的cron功能了. 关于cron任务计划 ...
- Linux系统下使用crontab添加计划任务的方法
在服务器中添加定期执行的任务,在很多情况下是非常必要的.比如,每天清理一次/tmp目录下的文件;没几分钟检查某一守护进程是否正常等等.这样计划任务就显得尤为方便.下面将介绍如何在Linux系统中 ...
- 通过Linux系统Cron执行OwnCloud计划任务
通过Linux系统Cron执行OwnCloud计划任务 02/02/2013 CRON的确是一个非常有用的功能,它有效减少了系统的负载,在将WordPress和StatusNet的任务计划都转换到Cr ...
- 菜鸟学习计划浅谈之Linux系统
人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学 ...
- Linux系统中的计划任务
在系统的工作管理中,我们经常会有需要去告诉电脑某些特定的时间执行一些操作,比如定时提醒工作人员需要做什么事情,或者在每天凌晨进行文件备份等等.这就需要某些命令来达成计划任务. 计划任务可以大体上分成两 ...
- 菜鸟学习计划浅谈之Linux系统 原
人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学 ...
- linux系统下添加计划任务执行php文件方法
在web开发过程中,经常需要设定一些定期执行的任务,比如商品定时上下架.我们以php文件为例,讲解linux下的计划任务,来看看吧 在web开发过程中,经常需要设定一些定期执行的任务,比如商品定时 ...
- Linux系统——进程和计划任务管理
进程和计划任务管理 一.进程和程序的关系 进程:在CPU及内存中运行的程序代码:动态执行的代码:每个进程可以创建一个或多个进程 程序:保存在硬盘.光盘等介质中的可执行代码和数据:静态保存的代码 二.基 ...
- Linux基础学习-crond系统计划任务
系统计划任务 大部分系统管理工作都是通过定期自动执行某个脚本来完成的,那么如何定期执行某个脚本,从而实现运维的自动化,这就要借助Linux的cron功能了. 计划任务分为一次性计划任务和周期性计划任务 ...
随机推荐
- Modbus 报文
Tx:002366-02 10 00 02 00 04 08 00 0A 00 14 00 1E 00 28 F6 A7 02: 地址位 -- Slave ID 10: 功能码 -- Function ...
- springboot 不同环境读取不同配置
1. 3个配置文件(更多环境可以建多个): application.properties (公共配置文件) application-dev.properties (开发环境) applicatio ...
- Linux服务器以及系统性能排查常用命令
一.在Linux系统中排查CPU故障的方法和技巧 1.top命令 Linux内部命令,可以查看实时的CPU的使用情况,也可以查看CPU最近一段时间CPU的使用情况 Linux下常用的性能分析工具,能够 ...
- Hbase之过滤器的使用
一.过滤器概念 基础API中的查询操作在面对大量数据的时候是非常物无力的,这里Hbase提供了高级的查询方法:Filter(过滤器).过滤器可以根据簇.列.版本等更多的条件来对数据进行过滤,基于Hba ...
- java:原子类的CAS
当一个处理器想要更新某个变量的值时,向总线发出LOCK#信号,此时其他处理器的对该变量的操作请求将被阻塞,发出锁定信号的处理器将独占共享内存,于是更新就是原子性的了. 1.compareAndSet- ...
- linuix查端口
根据进程pid查端口:netstat -nap | grep pid 根据端口port查进程:netstat -nap | grep port 根据pid查找文件的启动位置 ps aux | gre ...
- Java基础--接口回调(接口 对象名 = new 类名)理解
接口 对象名1 = new 类名和类名 对象名2 = new 类名的区别是什么? 实例 /** *Person.java 接口 */ public interface Person { void in ...
- redis 6.0新特性
防止忘记,记录一下 1.多线程IO Redis 6引入多线程IO,但多线程部分只是用来处理网络数据的读写和协议解析,执行命令仍然是单线程.之所以这么设计是不想因为多线程而变得复杂,需要去控制 key. ...
- 【Oracle】生成随机数
Oracle生成随机数: dbms_random.string(opt, 6) --括号里的opt要从下面的列表中选择,数字代表要生成几位随机数,如果是1位的话,就改成1 以此类推 opt可取 ...
- 工作记录:记一次线上ZK掉线问题排查
目录 问题的发现 zk的情况以及分析 总结 问题的发现 最早问题的发现在于用户提的,用户提出他支付时支付失败,过了一会儿再试就好了,于是翻日志,查询到当时duboo调用出现了下类错误: [TraceI ...