视频链接:http://www.bilibili.com/video/av11008859/

1. 什么是例行性命令                (分为两种,一种是周期性的,一种是突发性的)
1.1 Linux 工作排程的种类: at, cron          ( at是突发的,cron是周期的)
1.2 系统上常见的例行性命令有哪些?         (log rotate,数据库rpm,locate数据库)
2. 仅执行一次的工作排程: at, atq, atrm
3. 循环执行的例行性命令: cron
3.1 使用者的设定: crontab
3.2 系统的设定: /etc/crontab

at  仅进行一次的工程安排

这个现在好多都是预设关闭的,所以我们要先打开at

/etc/init.d/atd restart

#再设定一下开机启动
chkconfig --level atd on

现在的版本太新了?我的Ubantu是有at的,而且Ubantu没有chkconfig命令,所以上面的代码先不管它,如果你的Linux不管什么版本真的不支持at再来写,还有jim用户执行的at命令的记录存在/var/spool/at/jim里面

并不是所有人都可以去执行at的,因为万一有人入侵你的主机,随便一个账号就去执行at了,搞不好在什么时候给你来一锤子,你就JJ了...所以我们要加以限制,这里有两个档案/etc/at.allow和/etc/at.deny

明白了上面的种种条件限制规则之后,我们正式的开始at命令之旅

#再过五分钟后,将 /root/.bashrc 寄给 dmtsai 这个使用者
at now + minutes
/bin/mail dmtsai -s "testing at job" < /root/.bashrc
<EOT> #<==这里输入 [ctrl] + d 就会出现 <EOF> 的字样!代表结束! #由于机房预计于 // 停电,我想要在 // : 关机
at : --
/bin/sync
/bin/sync
/sbin/shutdown -h now
<EOT> #按下ctrl+d 就结束

at在工作安排的使用上,系统会将at工作独立出bash环境中,直接交给atd程序,所以你离线也是ok的,没网也行哦,两个命令atq是查看at排程,atrm是删除at排程

#查询目前主机上面有多少的 at 工作排程?
atq #将上述的第 个工作移除!
atrm

结束.

crontab 循环执行的例行性命令

和at一样,也是两个文档/etc/cron.allow和/etc/cron.deny

执行crontab之后,记录会存到/var/spool/cron里面,如果是jim执行的,那就在/var/spool/cron/jim里面

crontab

-u :只有 root 才能进行这个任务,亦即帮其它使用者建立/移除 crontab;
-e :编辑 crontab 的工作内容
-l :查阅 crontab 的工作内容
-r :移除 crontab 的工作内容

#用dmtsai在每天的12:00发信给自己

crontab -e

0 12 * * * mail dmtsai -s "at 12:00" < /home/dmtsai/.bashrc
 

可以看到,我们进去cron之后有6个字段需要我们编辑,这6个字段分别代表的意思是

鸟哥的Linux私房菜——第十九章:例行命令的建立的更多相关文章

  1. 鸟哥的linux私房菜——第十六章学习(程序管理与 SELinux 初探)

    第十六章.程序管理与 SE Linux 初探 在 Linux 系统当中:"触发任何一个事件时,系统都会将他定义成为一个程序,并且给予这个程序一个 ID ,称为 PID,同时依据启发这个程序的 ...

  2. 鸟哥的linux私房菜——第十二章学习(Shell Scripts)

    第十二章  Shell Scripts 1.0).什么是shell scripts? script 是"脚本.剧本"的意思.整句话是说, shell script 是针对 shel ...

  3. 鸟哥的Linux私房菜——第十四章:Bash Shell

    视频链接:http://www.bilibili.com/video/av10094012/ 本章目录: 1. Bash shell1.1 什么是 shell ? (我们通过shell与Kernel核 ...

  4. 鸟哥的Linux私房菜——第十二章:档案的压缩与打包

    视频链接: 土豆:http://www.tudou.com/programs/view/GncwT0FJKsQ B站(推荐):http://www.bilibili.com/video/av98857 ...

  5. 鸟哥的Linux私房菜——第十六章:学习Shell Scripts

    视频链接:http://www.bilibili.com/video/av10565321/ 1. 什么是 Shell Script       (shell写的脚本)1.1 干嘛学习 shell s ...

  6. 鸟哥的Linux私房菜——第十五章:正规表示法

    视频链接 B站:http://www.bilibili.com/video/av10364761/ 目录如下 1. 前言:2. 基础正规表示法:2.1 以 grep 撷取字符串 (grep -iv   ...

  7. 鸟哥的Linux私房菜笔记第四章

    前言 对着<鸟哥的Linux私房菜-基础版>做了简化笔记.不想让自己知其然而不知其所然.所以写个博客让自己好好巩固一下,当然不可能把书中的内容全部写下来.在这里就简化一点把命令写下来. 让 ...

  8. 鸟哥的Linux私房菜笔记第六章(二)

    文件内容查询 直接查询文件内容 查阅一个文件的内容可以使用指令cat/tac/nl. # [cat|tac|nl] 文件 区别: 1.cat是直接把文件内容输出到屏幕上,并且从第一行开始输出到末行 2 ...

  9. 鸟哥的Linux私房菜 第十八章、认识系统服务 (daemons)

    什么是 daemon 与服务 (service) Linux Daemon (守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些事件.它不需要用户输入就能运行 ...

随机推荐

  1. Linux 学习日记 1

    这是我第一次系统地学习Linux,希望通过这个学习日记收获一些东西把-- @_@ Grub - 启动管理器   在启动时让用户选择要启动的系统.(但是windows比较霸道--重装windows后会将 ...

  2. cocos2d-x学习记录3——CCTouch触摸响应

    游戏不同于影音,强交互性是其一大特色,在游戏中主要体现为接受用户的输入并响应.智能手机触摸是其重要的输入方式. 在cocos2d-x中,触摸分为单点触摸和多点触摸. 单点触摸:主要继承CCTarget ...

  3. libgdx自制简易Flappy Bird

    Flappy Bird,好吧,无需多说.今天年初不知咋的,一下子就火了,而且直接跃居榜首,在ios和android平台都是如此,实在难以理解.传说其作者每天收入能达到5w刀,着实碉堡了... 好吧,咱 ...

  4. python3 简单进度条代码

    进度条代码函数实现 import sys, time class ShowProcess(object): """ 显示处理进度的类 调用该类相关函数即可实现处理进度的显 ...

  5. django在admin后台注册自己创建的数据库表

    django在admin后台注册自己创建的数据库表,这样我们就可以在admin后台看到表结构信息,我们就可以在admin后台快速录入表记录信息 如果没有注册,那么你在登录django自带的admin的 ...

  6. pyinstaller将python编写的打卡程序打包成exe

    编写了一个简易的定时提醒下班打卡程序,python代码如下: #coding:utf-8 import time import datetime from tkMessageBox import * ...

  7. 机器学习初入门01-numpy的基础用法

    一.numpy基础结构 1. numpy.genformtxt('路径名', delimiter = '分割符', dytype = 读取方式如str ):读取一个文件,返回一个numpy.ndarr ...

  8. 微软职位内部推荐-Senior SW Engineer for Application Ecosystem

    微软近期Open的职位: Job posting title: Senior Development Engineer Location: China, Beijing Division: Opera ...

  9. ace -- api

    Ace The main class required to set up an Ace instance in the browser. 在浏览器中设置一个ace实例所需要的主要类. Methods ...

  10. mysql select 字段别名是否可以用在 select中或者where中

    select column1+10 as c1,c1+10 as c2 from table1;想实现上面的效果,结果在mysql里面报错了,提示找不到c1这个列; -- 不同的 数据库不一样 一般不 ...