任务计划和本地系统的默认邮件

一、前言

二、本地mail的使用方法

三、at /batch

四、cron

五、小结

 

一、前言

linux 中执行任务计划有三种命令:at ,batch ,cron.其中,at,batch 是一次性执行,而crontab,则是周期性执行;

作业执行完成后,会通过邮件通知给作业提交者;因此,以下就从邮件说起。

二、邮件服务

Centos ,默认会安装并启动邮件服务,仅服务于本地系统。默认是使用25端口,可以用netstat -tan 查看tcp 25 端口,以下介绍下简单的应用:

写本地邮件

1、第一种方法

mail 用户名/用户名@主机名

按照提示写主题,邮件内容

CTRL+d 提交

如:

从用户007,发给root的邮件

blob.png

2、第二种方法

把邮件内容先写在一个文件中,使用重定向

mail -s 主题 用户< 文件  

或者

echo 内容 | mail -s 主题 用户

blob.png

查看本地邮件,使用mail命令,q退出

mail

blob.png

如果有邮件,显示如下:

blob.png

按前面的序号就可以读邮件

在命令提示符下,输入 help可以查看命令帮助。

常用的进行邮件回复,删除,另存等。用list可以查看到所有命令

三、at /batch

at +(now + count time-units)  :time-units 可以是minutes,  hours, days)

      或者 hh:mm   MMDDYY 等准确时间

编辑任务,最后CTRL+d 提交

先看一个例子

blob.png

最后一行表示任务7于什么时间执行。

查看任务

atq 或 at -l

blob.png

看到的是任务10,任务7由于已经执行完了,所以看不到。a表示任务队列;要取消还未执行的任务。用artm 任务编号。

blob.png

任务执行后进入mail,查看邮件,里面有任务执行的结果

batch 类似于at,只不过会自动在系统空闲时运行。无需指定时间。

四、cron

cron daemon,一直工作于后台

1、使用crontab之前,要查看服务器是否正常

blob.png

如果状态信息显示为 “is stop",则需要执行”service crone start"

查看开机crond是否启动

blob.png

说明开机自启动。否则需要使用“ chkconfig on 命令

cron 是运行crontab里的任务

2、crond任务分两类:

系统cron : /etc/crontab

用户cron: /var/spool/cron 目录中,功能类似于 /etc/crontab

系统cron

cat /etc/crontab 可以发现前面定义了环境变量,也就是说,如果以后执行的不在这个环境变量中的命令,会无法执行(可通过写绝对路径,或自定义个环境变量解决)

blob.png

时间   命令  组成了cron的作业

 时间

(每小时的第几)分钟       小时  日  月    周几

7 6 5 4 *  每年4月5号6点7分执行一次

*/3 * * * *  每3分钟一次

20-40/3 * * * *  每个小时的20-40分钟内每3分钟执行一次

3 1 * * 3,5,7 每周3,5,7

1 7,9,13 * * *  (每天7点9点13点 执行一次)

命令

脚本 其他任意可执行程序

如:

工作日的工作时间内,每小时执行一次'echo "hello"'

1 9-18 * * 1-5 /bin/echo "hello"

用户 cron

cron 

    -l: 列出已经定义的所有任务

    -e: 打开编辑界面定义任务 (可以帮你检查语法,建议使用)

     -r: 移除所有任务 (删除一部分用-e的方式删除行,-r是把文件都删除了)

 管理员可以定义任务给用户

     crontab -u USERNAME -e

  同样,可以查看删除更改

五、小结

以上大概描述了常用任务创建,修改,删除等,也说明了常用的系统内mail使用方法。

在linux里,一切皆文件,增删查改文件,以及文件的保存位置还是需要记清楚。

如果需要定义秒级别的任务,则超出了cron的功能,需要用sleep命令进行补充使用。

还有不完善的地方,以后学习中继续体会。

 

原创文章,作者:麦鲸,如若转载,请注明出处:http://www.178linux.com/4307

(0)
麦鲸麦鲸
上一篇 2015-05-13
下一篇 2015-05-13

相关推荐

  • N25 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; 3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; 4、添加用户bash, testbash, basher, nol…

    Linux干货 2017-01-08
  • linux基础学习之AWK

    内容: 1、awk输出(print、printf) 2、awk变量(内建变量和定义变量) 3、awk数组 4、awk重定向输出 5、awk操作符 6、awk常见模式类型 7、awk控制及循环语句 8、awk内置函数 awk:(其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母)…

    Linux干货 2016-09-22
  • Linux权限基本介绍,管理

     Linux权限机制采用UGO模式。其中 u(user)表示所属用户、g(group)表示所属组、o(other)表示除了所属用户、所属组之外的情况。 u、g、o 都有读(read)、写(write)、执行(excute) 三个权限,所以UGO模式是三类九种基本权限。         用命令 ls …

    Linux干货 2017-07-22
  • 内置数据结构,列表及其方法

    List:列表有若干个元素,元素可以是任意对象,元素有顺序,可以使用索引和迭代,使用线性结构,使用[ ]进行描述,在内存中的空间是连续的,每个元素在内存中的空间是一样的………列表是可变的,列表不能一开始就定义大小,列表索引不可以超界   列表索引l.index(),从左向右搜索,发现第一个匹配的,自动返回搜索的值的索引;匹配不到,抛出异常Value…

    Linux干货 2018-03-25
  • linux终端类型

           关键词:linxu终端类型,串行端口终端,伪终端,控制终端,控制台终端,虚拟终端        摘要:终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写。在Linux系统的设备特殊文件目录/dev/下,终端特殊…

    Linux干货 2016-10-19
  • 马哥教育网络班22期+第9周课程练习 忍者乱太郎喻成

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i user_can_not_login_count; declare -i user_can_login…

    Linux干货 2017-01-03

评论列表(3条)

  • stanley
    stanley 2015-05-13 18:44

    麦鲸这次作品质量较前几次高出许多,如果加上段落标识和字体大小精细调整会更出色

    • 麦鲸
      麦鲸 2015-05-16 10:29

      @stanley谢谢老师 :lol:

  • 运维派
    运维派 2015-05-15 08:03

    文章有干货,但排版方面最好优化下。