Linux用户自定义at、cron计划任务执行的方法

Linux系统中有两种计划任务,一种是只会执行一次 at 计划任务,一种是可以周期性地执行的 cron 计划任务

at 一次性计划任务

描述

在指定的时间执行特定命令(单次),也称为延时动作任务。

用法

at  时间 [回车]

参数

at -l      #列出单次计划任务
at -r 任务id  ##删除此id的任务
at -d 任务id  ##删除此id的任务
at -m      #让无输出的命令产生邮件
at -M      #让有输出的命令产生邮件
at -c 任务id  ##产看此id任务的动作
at -f 文件   ##用文件内记录的命令作为延时任务的执行命令

实例

首先查看系统时间

[root@test ~]# date
Thu May 17 18:40:11 CST 2018

指定单次计划任务(延时动作)

[root@test ~]# at 18:45       ##在当天18:45执行的计划(18:45 2018-05-17)
at> date              ##计划任务内容
at> shutdown -h now         ##计划任务内容
at> <EOT>              ##命令输入结束,按Ctrl+D退出
job 10 at Thu May 17 18:45:00 2018 ##系统提示有编号为10的计划任务

cron周期性计划任务

使用 cron 制订计划任务,需要确保crond服务开启且为开机自启。

# systemctl start crond
# systemctl enable crond

描述

为每个用户维护周期性的计划任务文件。

用法

crontab  [ -u 用户 ]  [ -l|-r|-e ]

选项

参数 用法
-u 指定计划任务的用户,不加-u则默认为当前用户
-l 查看计划任务
-r 删除计划任务
-e 编辑计划任务
-i 使用-r删除计划任务时,要求用户确认删除

corn计划任务格式

第一项 第二项 第三项 第四项 第五项 第六项
命令
00~59 00~23 1~31 1~12 1~7 action

如果需要指定时间段,可以使用横杠(-)表示一段连续的时间,使用逗号(,)表示若干个不连续的时间,使用星号(*)表示所有的时间,使用除号(/)表示间隔时间。

示例

[root@test ~]# crontab -e
00 20 * * *  rm -fr /tmp/*     ##每天20:00删除/tmp中的所有内容
00 20 1,5 * *  rm -fr /tmp/*    ##每月1号和5号的20:00,删除/tmp中的所有内容
00 20 1-5 * *  rm -fr /tmp/*    ##每月1号到5号的20:00,删除/tmp中的所有内容
00 20 1,5 3 *  rm -fr /tmp/*    ##3月1号和5号的20:00,删除/tmp中的所有内容
00 20 1,5 3 3  rm -fr /tmp/*    ##3月1号和5号以及3月的所有周三的20:00,删除/tmp中的所有内容
58 20-21 * * *  rm -fr /tmp/*    ##每天20-21点,每个小时的58分,删除/tmp中的所有内容
*/30 20-21 * * 1-5  rm -fr /tmp/*  ##周一到周五的20点到21点,每隔半小时,删除/tmp中的所有内容
00 */3 * * * who          ##每3小时的整点检查用户登录情况

cron计划任务权限

为了控制用户随意定义自己的计划任务,管理员可以进行 ACL 访问控制。at 计划任务的控制文件分别是/etc/at.allow和/etc/at.deny,默认at.llow不存在。cron计划任务的控制文件分别为/etc/cron.allow和/etc/cron.deny,默认cron.allow不存在。

以上这篇Linux用户自定义at、cron计划任务执行的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • linux下用cron定时执行任务的方法

    名称 : crontab 使用权限 : 所有使用者 使用方式 : crontab file [-u user]-用指定的文件替代目前的crontab. crontab-[-u user]-用标准输入替代目前的crontab. crontab-1[user]-列出用户目前的crontab. crontab-e[user]-编辑用户目前的crontab. crontab-d[user]-删除用户目前的crontab. crontab-c dir- 指定crontab的目录. crontab文件的格式

  • Linux定时执行任务at和crontab命令详解

    Linux下的两种定时执行任务的方法:at命令,以及crontab服务,小编整理了关于这2个命令的详细用法,希望大家学习后能够更加深入的理解. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定运行的时间,那么就会在哪个时候运行.at类似打印 进程,会把任务放到/var/spool/at目录中,到指定时间运行它 .at命令相当于另一个shell,运行at time命令时,它发送一个个命令,可以输入任意命令或者程序.at now +

  • 详解在Linux中怎么使用cron计划任务

    没有时间运行命令?使用 cron 的计划任务意味着你不用熬夜程序也可以运行. 系统管理员(在许多好处中)的挑战之一是在你该睡觉的时候去运行一些任务.例如,一些任务(包括定期循环运行的任务)需要在没有人使用计算机资源的时候去运行,如午夜或周末.在下班后,我没有时间去运行命令或脚本.而且,我也不想在晚上去启动备份或重大更新. 取而代之的是,我使用两个服务功能在我预定的时间去运行命令.程序和任务.cron 和 at 服务允许系统管理员去安排任务运行在未来的某个特定时间.at 服务指定在某个时间去运行一

  • linux下定时执行任务的方法及crontab 用法说明(收集整理)

    linux下定时执行任务的方法 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间. cron的配置文件称为"crontab",是"cron table"的简写. 一.cron在3个地方查找配置文件: 1./var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的cron

  • Linux用户自定义at、cron计划任务执行的方法

    Linux系统中有两种计划任务,一种是只会执行一次 at 计划任务,一种是可以周期性地执行的 cron 计划任务 at 一次性计划任务 描述 在指定的时间执行特定命令(单次),也称为延时动作任务. 用法 at 时间 [回车] 参数 at -l #列出单次计划任务 at -r 任务id ##删除此id的任务 at -d 任务id ##删除此id的任务 at -m #让无输出的命令产生邮件 at -M #让有输出的命令产生邮件 at -c 任务id ##产看此id任务的动作 at -f 文件 ##用

  • 支持windows与linux的php计划任务的实现方法

    本文实例讲述了支持windows与linux的php计划任务的实现方法.包括了在winows下利用winodows计划任务来操作,还有在linux中利用linux的方法来实现.分享给大家供大家参考.具体实现方法如下: 使用php让浏览器刷新需要解决几个问题: 1.PHP脚本执行时间限制,默认的是30m 解决办法:set_time_limit();或者修改PHP.ini 设置max_execution_time时间(不推荐) 2.如果客户端浏览器关闭,程序可能就被迫终止,解决办法:ignore_u

  • linux定时任务crontab 实现每秒执行一次的方法

    linux crontab 命令,最小的执行时间是一分钟.如需要在小于一分钟内重复执行,可以有两个方法实现. Cron 各项的描述 以下是 crontab 文件的格式: {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} o minute: 区间为 0 – 59 o hour: 区间为0 – 23 o day-of-month: 区间为0 – 31 o month: 区间为1 – 12.

  • Linux下使用shell脚本自动执行脚本文件

    以下实例本人在Centos6.5 64位操作系统中使用 一.定时复制文件 a.在/usr/local/wfjb_web_back目录下创建 tomcatBack.sh文件 文件内容: #将tomcat中的应用wfjb_web 复制到 /usr/local/wfjb_web_back/tomcat_back/目录下 并按照日期作为文件名称 cp -af /usr/local/apache-tomcat-7.0.73/webapps/wfjb_web /usr/local/wfjb_web_back

  • python文件读写操作与linux shell变量命令交互执行的方法

    本文实例讲述了python文件读写操作与linux shell变量命令交互执行的方法.分享给大家供大家参考.具体如下: python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼. 代码如下: 复制代码 代码如下: #coding=utf-8 #!/usr/bin/python import os import time #python执行linux命令 os.system(':>./aa.py') #人机交互输入 S = raw_input("

  • 使用Linux shell脚本实现FTP定时执行批量下载指定文件

    使用FTP定时批量下载指定文件的shell脚本,具体实例介绍如下所示: 1.目标FTP服务器地址 #FTP服务器地址 ip=10.19.15.23 2.FTP账号和密码 u=账号 p=密码 3.使用mget结合正则表达式下载文件 #获取昨天日期,为后面下载使用 T=`date -d yesterday +%Y%m%d` 4.连接FTP服务器,到指定路径下下载文件 ftp -n <<EOF open $ip user $u $p binary cd /hour #远程服务器文件目录 lcd /h

  • linux expect实现登陆远程主机并执行命令示例代码

    本文主要给大家介绍了关于linux expect实现登陆远程主机并执行命令的相关内容,分享出来供大家参考学习,下面来一看看详细的介绍: 示例代码: #!/bin/bash export cmd=$1 expect << 'END' set cmd "$env(cmd)" spawn ssh root@192.168.56.1 $cmd expect { "(yes/no)?" {send "yes\r";exp_continue} &

  • Linux 查看历史命令并执行的方法

    查看历史命令,并执行指定命令 owen@owen:~/owen/software/nginx-1.10.1$ history | grep 'configure' 1083 ./configure 1109 ./configure --prefix=/usr/nginx 1110 ./configure --prefix=/usr/nginx 2058 ./configure --prefix=/usr/local/nginx --with-openssl=/home/owen/owen/sof

随机推荐