热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux系统中的计划任务

在系统的工作管理中,我们经常会有需要去告诉电脑某些特定的时间执行一些操作,比如定时提醒工作人员需要做什么事情,或者在每天凌晨进行文件备份等等。这就需要某些命令来达成计划任务。计划任

  在系统的工作管理中,我们经常会有需要去告诉电脑某些特定的时间执行一些操作,比如定时提醒工作人员需要做什么事情,或者在每天凌晨进行文件备份等等。这就需要某些命令来达成计划任务。

  计划任务可以大体上分成两类:1、定时性的,每隔一定的周期就做同样的事情;

                2、突发性的,只执行这一次就不再执行。在Linux系统中分别用crontab和at 两个命令来进行这两个操作。

 

at一次性计划任务使用

 

at语法格式:at 时间

 

1. 下载at程序

[root@ken ~]# yum install at -y

 

2. 启动atd服务

[root@ken ~]# systemctl restart atd
[root@ken
~]# ps aux | grep atd
root
1166 0.0 0.1 25904 944 ? Ss 17:52 0:00 /usr/sbin/at -f
root
1168 0.0 0.1 112704 956 pts/0 S+ 17:52 0:00 grep --color=auto atd

 

3. 设置at计划任务


技术分享图片

[root@ken ~]# at 10:00 #如果是上午时间,后面加上am,比如9:20am
at
> touch /tmp/test1 #输入你要执行的命令
at
> #按ctrl+d保存
job
1 at Fri Mar 1 10:00:00 2019
[root@ken
~]# at -l #查看计划任务
1 Fri Mar 1 10:00:00 2019 a root
[root@ken
~]# atq #查看计划任务
1 Fri Mar 1 10:00:00 2019 a root

技术分享图片

 

4. 删除计划任务atrm

[root@ken ~]# at -l #第一步查看计划任务,获取前面编号
1 Fri Mar 1 10:00:00 2019 a root
[root@ken
~]# atrm 1 #删除计划任务加上编号
[root@ken
~]# at -l #再次查看计划任务发现已经删除

 

5. at计划任务的特殊写法

[root@ken ~]# at 20:00 2018-10-1 在某天
[root@ken
~]# at now +10min 在 10分钟后执行
[root@ken
~]# at 17:00 tomorrow 明天下午5点执行
[root@ken
~]# at 6:00 pm +3 days 在3天以后的下午6点执行

 

crontab定时任务的使用

 

 

 

语法:#crontab -u  -e

 

         常用选项:

 

                  -llist,列出指定用户的计划任务列表

 

                  -eedit,编辑指定用户的计划任务列表

 

                  -uuser,指定的用户名,如果不指定,则表示当前用户

 

                  -rremove,删除指定用户的计划任务列表

 

 

 

1. 查看进程是否启动

 

[root@ken ~]# ps aux | grep crond
root
621 0.0 0.3 126284 1600 ? Ss 17:46 0:00 /usr/sbin/crond -n
root
1194 0.0 0.1 112704 956 pts/0 S+ 18:05 0:00 grep --color=auto crond

 

 

 

2. 查看计划任务

 

[root@ken ~]# crontab -l
no crontab
for root

 

 

 

3. 编写计划任务

 

计划任务的规则语法格式,以行为单位,一行为一个计划:

 

分 时 日 月 周 需要执行的命令

 

执行的命令建议写成绝对路径的格式!

 

 

 

例如:如果想要每天的00分执行reboot指令,则可以写成

 

0 0 * * * reboot

 

 

 

取值范围(常识):

 

分:0~59

 

时:0~23

 

日:1~31

 

月:1~12

 

周:0~707表示星期天

 

 

 

四个符号:

 

*:表示取值范围中的每一个数字

 

-:做连续区间表达式的,要想表示1~7,则可以写成:1-7

 

/:表示每多少个,例如:想每10分钟一次,则可以在分的位置写:*/10

 

,:表示多个取值,比如想在1点,26点执行,则可以在时的位置写:1,2,6

 

 

技术分享图片


推荐阅读
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • 本文介绍了将mysql从5.6.15升级到5.7.15的详细步骤,包括关闭访问、备份旧库、备份权限、配置文件备份、关闭旧数据库、安装二进制、替换配置文件以及启动新数据库等操作。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • Redis API
    安装启动最简启动命令行输入验证动态参数启动配置文件启动常用配置通用命令keysbdsize计算key的总数exists判断是否存在delkeyvalue删除指定的keyvalue成 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 本文详细介绍了在Linux虚拟化部署中进行VLAN配置的方法。首先要确认Linux系统内核是否已经支持VLAN功能,然后配置物理网卡、子网卡和虚拟VLAN网卡的关系。接着介绍了在Linux配置VLAN Trunk的步骤,包括将物理网卡添加到VLAN、检查添加的VLAN虚拟网卡信息以及重启网络服务等。最后,通过验证连通性来确认配置是否成功。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 树莓派Linux基础(一):查看文件系统的命令行操作
    本文介绍了在树莓派上通过SSH服务使用命令行查看文件系统的操作,包括cd命令用于变更目录、pwd命令用于显示当前目录位置、ls命令用于显示文件和目录列表。详细讲解了这些命令的使用方法和注意事项。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
author-avatar
书友36782274
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有