Linux中计划任务、周期性任务设置

计划任务:指在未来的特定时间里,执行一次某一特定任务。当然,如果同一任务需要在不同时间点执行执行两次、三次或多次,可以视为多个一次看待。

周期性任务:指某一任务需要周期性的执行。周期性可以是以分、时、天等为单位,但又不限于这些单位。

常用于执行计划任务的命令——at, batch, 与周期性任务相关的的命令crontabs。

1.at命令和batch命令的区别。

  at命令旨在特定的之间执行任务;batch命令设置的任务由系统选择空闲时间去执行,空闲时间默认为cpu利用率小于0.8的时候

2.at命令 

格式  
    at [option] TIME 选项 -l     atq命令的别名,显示用户的计划任务   
-d     atrm命令的别名,清空计划任务
-c     查看特定的计划任务
-f FILE 从文件中读取计划任务命令  TIME,有如下几种格式
    HH:MM [YYYY-mm-dd]
    noon, midnight, teatime
    tomorrow
    now+#{minutes,hours,days, weeks} 注:batch命令使用方法和at类似,这里不再赘述
 

3. crontabs命令

a. 与cron服务相关的程序包有三个:

  cronie:主程序包,提供crond守护进程及相关辅助工具

  cronie-anacron:cronie的补充程序,用于监控cronie任务执行

  crontabs: 包含CentOS提供系统维护任务

b. 周期任务分类。根据用户级别,可分为系统周期任务和用户周期任务。

c. 系统周期任务一般直接直接修改/etc/crontab文件,即可配置周期任务, 可查看该文件中的内容

[root@vathe-pc tmp]#cat /etc/crontab
SHELL=/bin/bash             
PATH=/sbin:/bin:/usr/sbin:/usr/bin     # 环境变量路径
MAILTO=root                    # 周期任务执行之后,邮件接受者
HOME=/ # For details see man crontabs # Example of job definition:          # 计划任务书写格式
# .---------------- minute ( - )   
# | .------------- hour ( - )
# | | .---------- day of month ( - )
# | | | .------- month ( - ) OR jan,feb,mar,apr ...
# | | | | .---- day of week ( - ) (Sunday= or ) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed

  d. 周期任务中,通过/etc/crontab文件可知,有5个与时间相关的选项,这些选项有如下规则:

a.特定值 #
  例如: 5    或   20

b.可使用*表示任意值
c. 离散值用逗号隔开
    例如: 5,6,2   或者 0,3
d. 连续值用短折线“-”表示

  例如:10-21

e. 可使用正斜线“/”’步长:
  例如: */3

  e. 配置用户周期任务时,可以直接使用

    crontabs -e

     编辑相关配置文件,文件格式和/etc/crontab类似,只是不需要填写user-name选项。其他选项:

crontab   -e     直接编辑文件
-l 查看周期任务
-r 清空周期任务 -i 交互模式
     -u USER: 仅root可运行,指定以特定用户身份执行该周期任务

  f. 用户周期任务,有自己独有的时间格式, @CMD——可代表特定周期时间

@rebootRun once after reboot.
@yearly0 *
@annually0 *
@monthly0 * *
@weekly0 * *
@daily0 * * *
@hourly0 * * * *

4. 相关的配置文件

/etc/crontab
/etc/cron.d/ 配置文件
/etc/cron.hourly/ 脚本
/etc/cron.daily/脚本
/etc/cron.weekly/脚本
/etc/cron.monthly/脚本

/etc/anacrontab      负责执行以上/etc/cron.hourly/等文件中的系统任务

/var/spool/cron/    用户周期任务配置文件

/etc/cron.{allow,deny} 用户执行周期任务的权限配置文件

    

  

    

Linux中计划任务、周期性任务设置的更多相关文章

  1. Linux任务计划、周期性任务执行

    Linux任务计划.周期性任务执行 周期性任务执行: cron 守护进程(crond):服务,不间断地运行于后台 # service crond {start|stop|status|restart} ...

  2. linux任务计划及周期性任务计划

    相关命令:at.batch.cron.mailx 未来某时间执行一次任务:at, batch 周期性运行某任务: cron 一.未来某时间执行一次任务:at命令 at, batch, atq, atr ...

  3. 【进程/作业管理】篇章四:Linux任务计划、周期性任务执行

    命令归纳: at 未来时间点让特定任务运行一次 batch 未来时间点让系统自行选择在系统资源较空闲的时间去执行指定的任务 corn 周期性任务计划(corntad) at命令详解 <--- 假 ...

  4. 如何在linux中批量建立用户并设置随机密码

    Ubuntu是基于linux的免费开源操作系统,同时也是真正意义上的“多任务多用户”操作系统,既然是多用户系统,自然就涉及到创建多个用户的问题.同时由于Ubuntu系统中的root用户具有最高权限,无 ...

  5. 二十三、Linux任务计划及周期性任务执行:at、crontab命令

    一.概述 未来的某时间点执行一次某任务:at, batch周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开启 ...

  6. Linux任务计划及周期性任务执行:at、crontab命令

    一.概述 未来的某时间点执行一次某任务:at, batch 周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开 ...

  7. Linux中计划任务执行脚本crontab-简洁版

    我使用的是ubuntu16,所以在ubuntu中一切正常,在其他linux系统中应该都差不多. 1 计划任务,crontab命令选项:     -u指定一个用户,     -l列出某个用户的任务计划, ...

  8. Linux 中计划任务-at-cron

    概念-计划任务:在某个时段自动执行某个任务  at:只执行一次 语法:at   时间 服务:atd   必须开启 如没有:yum install at -y 查看服务状态是否开启  systemctl ...

  9. linux中计划任务执行脚本

    我使用的是ubuntu14.4,所以在ubuntu中一切正常,在其他linux系统中应该都差不多. 1 计划任务,crontab命令选项:     -u指定一个用户,     -l列出某个用户的任务计 ...

随机推荐

  1. (转) K-Means聚类的Python实践

    本文转自: http://python.jobbole.com/87343/ K-Means聚类的Python实践 2017/02/11 · 实践项目 · K-means, 机器学习 分享到:1 原文 ...

  2. 解决Android Studio No cached version of org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.50 available for offline mode.

    打开 file --> Settings... --> Build,Execution,Deployment下点击 Gradle 在Global Gradle settings 处 取消勾 ...

  3. 剥开比原看代码09:通过dashboard创建密钥时,前端的数据是如何传到后端的?

    作者:freewind 比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchai ...

  4. ETCD原理

    etcd:从应用场景到实现原理的全方位解读 从etcd的架构开始,深入到源码中解析etcd 1 架构 从etcd的架构图中我们可以看到,etcd主要分为四个部分. HTTP Server: 用于处理用 ...

  5. VHDL 例程

    以下程序未经仿真,仅供说明 语法 声明参考库ieee,使用ieee中的std_logic_1164包全部条目可见 library ieee; use ieee.std_logic_1164.all; ...

  6. HDU 1298 T9(字典树+dfs)

    http://acm.hdu.edu.cn/showproblem.php?pid=1298 题意:模拟手机9键,给出每个单词的使用频率.现在给出按键的顺序,问每次按键后首字是什么(也就是要概率最大的 ...

  7. P3146 [USACO16OPEN]248 & P3147 [USACO16OPEN]262144

    注:两道题目题意是一样的,但是数据范围不同,一个为弱化版,另一个为强化版. P3146传送门(弱化版) 思路: 区间动规,设 f [ i ][ j ] 表示在区间 i ~ j 中获得的最大值,与普通区 ...

  8. 使用Hexo搭建一个简单的博客(一)

    搭建好简洁的博客框架后,回看时发现,简洁之中透露着一丝丝简陋,好的,网上关于丰富hexo的文章也很多 记录一下自己的一些瞎操作. 在你的hexo目录下,你可以看到themes文件夹里有个默认的land ...

  9. 《剑指offer》第六十二题(圆圈中最后剩下的数字)

    // 面试题62:圆圈中最后剩下的数字 // 题目:0, 1, …, n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里 // 删除第m个数字.求出这个圆圈里剩下的最后一个数字. #inclu ...

  10. django生成迁移文件

    1.创建虚拟环境 在终端上输入创建python3的虚拟环境 mkvirtualenv -p python3 虚拟环境的名字 安装django和pymysql 2.创建项目创建工程的命令: django ...