Linux进程管理(2)

来源:互联网 发布:杜兰特去勇士知乎 编辑:程序博客网 时间:2024/06/05 10:05

一.什么是例行性命令

每个人或多或少有一些约会或工作,有的工作是例行性的,例如每年一次的加薪,每月一次的工作报告,制定每周一次的午餐表,每天需要打卡等. 有的工作则是临时发生的,例如刚好总公司有人来访,需要您准备演讲设备等. 这些都是例行性的工作,Linux可以帮您提醒,例如,每天早上8点钟将服务器连上音响,启动音乐叫你起床. 中午12:00 希望Linux发一封信到您的邮件信箱,提醒你可以去吃午餐.


二.计划任务的命令

(1)at : 安排作业在某一时刻执行一次

(2)batch: 安排作业在系统负载不重时执行一次

(3)cron: 安排周期性运行的作业




at的命令格式及参数 :  

1.  at [-f 文件名]  时间

at命令指定时间的方式如下:

$绝对计时法:

    midnight  noon  teatime

    hh:mm   表示在今天的这个时间执行,如果该时刻已经超过,则在明天的hh:mm这个时间执行     ex:  04:00

    hh:mm tomorrow  明天这个时间执行                                                                                                   ex:  04:00 tomorrow

    hh:mm YYYY-MM-DD 在某年某月某一天的该时间执行该工作                                                          ex:  04:00 2020-13-14

$相对计时法

   now + n minutes   现在开始的n分种之后执行          ex :   now + 5 minutes

   now + n hours    

   now + n days 

例如我们打算5分钟后执行一个操作


如图,我们输入命令后会出现一个at开头的提示符,你就可以在这里输入你要执行的命令了  (注意命令里的路径要写绝对路径)


输入完命令后按下ctrl+d就保存了,并且会提示你这个工作将在什么时间执行, job 后面的数字表示你过去执行过几个计划任务.可以查看该任务是否已启动


2. at -d or atrm 删除队列中的任务


at -d 加上任务的序号  就把任务删除了

3. at -l or atq 查看队列中的任务


4.at配置文件 :显示哪些用户使用at

/etc/at.allow 如果该文件存在,只有列在次文件中的用户才可以使用at命令,如果这个文件不存在则会查/etc/at.deny 文件
/etc/at.deny 如果这个文件存在,在此文件中列出的用户都不能使用at命令

如果两个文件都不存在,只有root用户可以使用at命令
如果两个文件都存在,均为空则所有用户都可以使用at命令


batch命令使用方法同@.


循环执行的例行性命令: crontab

作用: 用于生成cron进程所需要的crontab文件

命令格式:    

  crontab {-l | -r | -e }

-l   显示当前的crontab

-r 删除当前的crontab

-e 使用编辑器编辑当前的crontab文件

 当我们执行crontab之后,会进入vi的编辑画面让我们编辑,  编辑的具体项如下 .

分钟     小时        天       月    星期     命令 

0           4              *          *          *                               (表示每天的凌晨4点执行一个命令, 具体命令没写出来, 星号表示任何时间都接受)

0           16           *          *      2,5                      (表示每周星期二和星期五的下午4点执行一个命令,  逗号表示分隔时间段)

0            16          *        1-3    2,5                        (表示1月到3月每周星期二和星期五下午4点执行一个命令,  -号表示一段时间范围内)

*/5          *            *           *        *                          (表示每隔5分钟执行一次命令,  /n 表示每隔n单位时间 )

例如卧希望电脑晚上8电关机, 当我输入crontab -e 之后,会自动跳到vi编辑界面,输入命令,保存退出


再查询一下当前的crontab内容,果然有了,注意命令要写绝对路径,这个很重要



0 0
原创粉丝点击