按下crtl+d取消定时任务

# at now+1hour
at> echo"a">a
at> <EOF>
at> <EOT>
job 4 at Thu Dec 31 15:52:00 2020
[root@localhost a]# atq
4 Thu Dec 31 15:52:00 2020 a root
[root@localhost a]# atr
atrm atrun
[root@localhost a]# atrm 4
[root@localhost a]# atq

at [-V] [-q queue] [-f file] [-mMlbv] TIME

at [-V] [-q queue] [-f file] [-mMlbv] –t time_arg

at –c job[ job…]

at [-rd] job[ job…]

atq [-V] [-q queue]

atrm [-V] job[ job…]

batch

(1).说明

  注意:at一般是临时任务,crontab一般是周期性任务,但都是计划任务的一种。

  at和batch读取标准输入或一个指定文件,它们将会在稍后被执行。

  at在指定的时间执行命令。

  atq列出用户待处理作业(jobs),如果是超级用户,所有用户的(待处理)作业都将被列出。输出格式:作业号、日期、小时、队列和用户名。

  atrm删除作业,由作业号标识。

  batch 当系统负载级别允许时执行命令;换句话说,当负载平均值降至0.8以下时,或者在atd中调用指定的值。

  at允许复杂的时间规范,扩展POSIX.2标准。它接受HH:MM形式的时间在一天的特定时间允许一项工作。如果时间已经过去,则假定是第二天。你也可以指定midnight午夜、noon中午或teatime下午茶时间(4PM),并且你可以使用AM、PM来表达允许时间的上午和下午。你还可以表明作业在哪一天运行,通过给出一个形式上有月份名称和任意的年份的日期,或给出形式为MMDDYY、MM/DD/YY、DD.MM.YY、YYYY-MM-DD的日期。日期规格必须遵循一天的时间规格。你也可以给出now + count time-units(时间单位)的时间,时间单位可以是minutes(分钟)、hours(小时)、days(天)或weeks(星期),并且你能通过添加today或tomorrow后缀来告诉at命令今天或明天运行作业。

  例如:从现在起三天后的下午四点运行作业at 4pm + 3 days;在July 31上午十点运行作业at 10am July 31;明天上午一点运行作业at 1am tomorrow。

  注意:at类命令的服务名叫atd

(2).选项

1
2
3
4
5
6
7
8
9
10
11
-V 打印版本信息
-q queue 使用指定的队列。队列名称由单个字母组成,有效队列名称范围从a到z和A到Z。at默认a队列,batch默认b队列。具有较高字母的队列运行良好。特殊队列“=”为正在运行的作业保留。如果作业提交给大写字母指定的队列,则该作业被视为在作业时提交给batch。一旦时间到达批处理规则将应用于负载平衡使用中。如果atq被赋予指定队列,它将只显示该队列的待处理作业。
-m 即使没有输出也会在作业完成后向用户发出邮件。
-M 不发送邮件给用户
-f file从文件读取而不是标准输出
-l atq的别名
-r atrm的别名
-d atrm的别名
-v 显示在读取作业前作业执行的时间。显示时间格式样例“The Feb 20 14:50:00 1997”
-c 将命令行中列出的作业标记为标准输出
-t time_arg 提交time_arg参数指定作业运行时间,格式[[CC]YY] MMDDhhmm

(3).实例

使用相对时间执行命令

1
2
3
4
5
6
7
8
[ root@CentOS6 桌面 ]# ls
按下ctrl+D 取消
[ root@CentOS6 桌面 ]# at now +1 minutes
at> echo "at now +1 minutes">1.txt   //不知道默认保存在哪里,只能自己设置一个
at> <EOT>                  //Ctrl+d会直接打出<EOT>
job 4 at 2018-07-21 11:22
[ root@CentOS6 桌面 ]# ls
1.txt
[ root@CentOS6 桌面 ]# vim 1.txt    //进入到1.txt里可以看到输出内容

使用绝对时间执行命令

1
2
3
4
[ root@CentOS6 桌面 ]# at 12:00
at> ls />2.txt
at> <EOT>
job 5 at 2018-07-21 12:00

查看待处理的作业,并删除无用的作业

1
2
3
4
5
[ root@CentOS6 桌面 ]# atq   //查看待处理的作业,也可以是at -l
5    2018-07-21 12:00 a root  //5任务编号,2018-07-21 12:00执行时间,a队列,root执行者
[ root@CentOS6 桌面 ]# atrm 5  //删除无用的作业
[ root@CentOS6 桌面 ]# atq
[ root@CentOS6 桌面 ]#

根据作业ID查看执行细节

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
[root@CentOS6 桌面]# at now +2 minutes
at> echo "at now +2 minutes">3.txt
at> job 6 at 2018-07-21 12:11
[root@CentOS6 桌面]# at -c 6
#!/bin/sh
# atrun uid=0 gid=0
# mail root 0
umask 22
ORBIT_SOCKETDIR=/tmp/orbit-root; export ORBIT_SOCKETDIR
HOSTNAME=CentOS6.8; export HOSTNAME
IMSETTINGS_INTEGRATE_DESKTOP=yes; export IMSETTINGS_INTEGRATE_DESKTOP
SHELL=/bin/bash; export SHELL
XDG_SESSION_COOKIE=f361f670c8f25b859941a16a00000017-1532137953.618455-100069161; export XDG_SESSION_COOKIE
HISTSIZE=1000; export HISTSIZE
GTK_RC_FILES=/etc/gtk/gtkrc:/root/.gtkrc-1.2-gnome2; export GTK_RC_FILES
WINDOWID=29360132; export WINDOWID
QTDIR=/usr/lib64/qt-3.3; export QTDIR
QTINC=/usr/lib64/qt-3.3/include; export QTINC
IMSETTINGS_MODULE=IBus; export IMSETTINGS_MODULE
USER=root; export USER LS_COLORS=rs=0:di=01\;34:ln=01\;36:mh=00:pi=40\;33:so=01\;35:do=01\;35:bd=40\;33\;01:cd=40\;33\;01:or=40\;31\;01:mi=01\;05\;37\;41:su=37\;41:sg=30\;43:ca=30\;41:tw=30\;42:ow=34\;42:st=37\;44:ex=01\;32:\*.tar=01\;31:\*.tgz=01\;31:\*.arj=01\;31:\*.taz=01\;31:\*.lzh=01\;31:\*.lzma=01\;31:\*.tlz=01\;31:\*.txz=01\;31:\*.zip=01\;31:\*.z=01\;31:\*.Z=01\;31:\*.dz=01\;31:\*.gz=01\;31:\*.lz=01\;31:\*.xz=01\;31:\*.bz2=01\;31:\*.tbz=01\;31:\*.tbz2=01\;31:\*.bz=01\;31:\*.tz=01\;31:\*.deb=01\;31:\*.rpm=01\;31:\*.jar=01\;31:\*.rar=01\;31:\*.ace=01\;31:\*.zoo=01\;31:\*.cpio=01\;31:\*.7z=01\;31:\*.rz=01\;31:\*.jpg=01\;35:\*.jpeg=01\;35:\*.gif=01\;35:\*.bmp=01\;35:\*.pbm=01\;35:\*.pgm=01\;35:\*.ppm=01\;35:\*.tga=01\;35:\*.xbm=01\;35:\*.xpm=01\;35:\*.tif=01\;35:\*.tiff=01\;35:\*.png=01\;35:\*.svg=01\;35:\*.svgz=01\;35:\*.mng=01\;35:\*.pcx=01\;35:\*.mov=01\;35:\*.mpg=01\;35:\*.mpeg=01\;35:\*.m2v=01\;35:\*.mkv=01\;35:\*.ogm=01\;35:\*.mp4=01\;35:\*.m4v=01\;35:\*.mp4v=01\;35:\*.vob=01\;35:\*.qt=01\;35:\*.nuv=01\;35:\*.wmv=01\;35:\*.asf=01\;35:\*.rm=01\;35:\*.rmvb=01\;35:\*.flc=01\;35:\*.avi=01\;35:\*.fli=01\;35:\*.flv=01\;35:\*.gl=01\;35:\*.dl=01\;35:\*.xcf=01\;35:\*.xwd=01\;35:\*.yuv=01\;35:\*.cgm=01\;35:\*.emf=01\;35:\*.axv=01\;35:\*.anx=01\;35:\*.ogv=01\;35:\*.ogx=01\;35:\*.aac=01\;36:\*.au=01\;36:\*.flac=01\;36:\*.mid=01\;36:\*.midi=01\;36:\*.mka=01\;36:\*.mp3=01\;36:\*.mpc=01\;36:\*.ogg=01\;36:\*.ra=01\;36:\*.wav=01\;36:\*.axa=01\;36:\*.oga=01\;36:\*.spx=01\;36:\*.xspf=01\;36:; export LS_COLORS
SSH_AUTH_SOCK=/tmp/keyring-EG2luA/socket.ssh; export SSH_AUTH_SOCK
GNOME_KEYRING_SOCKET=/tmp/keyring-EG2luA/socket; export GNOME_KEYRING_SOCKET
SESSION_MANAGER=local/unix:@/tmp/.ICE-unix/2251,unix/unix:/tmp/.ICE-unix/2251; export SESSION_MANAGER
USERNAME=root; export USERNAME
DESKTOP_SESSION=gnome; export DESKTOP_SESSION
MAIL=/var/spool/mail/root; export MAIL
PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin; export PATH
QT_IM_MODULE=ibus; export QT_IM_MODULE
PWD=/root/\�\�\�\�\�\�; export PWD
XMODIFIERS=@im=ibus; export XMODIFIERS
GDM_KEYBOARD_LAYOUT=us; export GDM_KEYBOARD_LAYOUT
LANG=zh_CN.UTF-8; export LANG
GNOME_KEYRING_PID=2241; export GNOME_KEYRING_PID
GDM_LANG=zh_CN.UTF-8; export GDM_LANG
GDMSESSION=gnome; export GDMSESSION
HISTCONTROL=ignoredups; export HISTCONTROL
SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass; export SSH_ASKPASS
SHLVL=2; export SHLVL
HOME=/root; export HOME
GNOME_DESKTOP_SESSION_ID=this-is-deprecated; export GNOME_DESKTOP_SESSION_ID
LOGNAME=root; export LOGNAME
CVS_RSH=ssh; export CVS_RSH
QTLIB=/usr/lib64/qt-3.3/lib; export QTLIB
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-0ZCxugK00Z,guid=ca2e032461b953e455fa17300000006c; export DBUS_SESSION_BUS_ADDRESS
LESSOPEN=\|\|/usr/bin/lesspipe.sh\ %s; export LESSOPEN
WINDOWPATH=1; export WINDOWPATH
G_BROKEN_FILENAMES=1; export G_BROKEN_FILENAMES
XAUTHORITY=/var/run/gdm/auth-for-root-mLJQsO/database; export XAUTHORITY
COLORTERM=gnome-terminal; export COLORTERM
cd /root/\�\�\�\�\�\� || {
    echo 'Execution directory inaccessible' >&2
    exit 1
}
${SHELL:-/bin/sh} << 'marcinDELIMITER09c0b95e'
echo "at now +2 minutes">3.txt
 
marcinDELIMITER09c0b95e

  说明:at命令尚未执行的任务都存在/var/spool/at/目录下,也可以直接查看该文件。

(4).at的特殊写法

at 20:00 2008-10-1  在具体时间执行

at now +10min  在十分钟后执行

at 17:00 tomorrow  明天下午五点执行

at 6:00 pm + 3 days  在3天后下午6点执行

at 23:00 < a.txt  将a.txt导入

at在指定的时间执行命令+atq列出用户待处理作业(jobs)的更多相关文章

  1. Linux 命令 - at: 在指定的时间执行任务

    在指定的时间执行任务. 命令格式 at [-V] [-q queue] [-f file] [-mldbv] TIMEat [-V] [-q queue] [-f file] [-mldbv] -t ...

  2. JS Window对象 计时器setInterval() 在执行时,从载入页面后每隔指定的时间执行代码。

    计时器setInterval() 在执行时,从载入页面后每隔指定的时间执行代码. 语法: setInterval(代码,交互时间); 参数说明: 1. 代码:要调用的函数或要执行的代码串. 2. 交互 ...

  3. XP_CMDSHELL 执行命令添加 windows 用户的方法

    1. 之前看过不少文档 可以使用 xp_SQLCMD的命令来进行渗透处理, 今天因为公司的服务器又中毒了 自己学习了下. 2. 修改SQLSERVER的设置 远程登录数据库 sqlcmd -S 10. ...

  4. cmd到指定目录并执行命令 mysql到bin目录并执行命令 cmd bat进入指定文件夹中并执行命令

    其实就一条命令:(保存为bat格式,注意:有两个and希腊字母 && )cmd /k "cd /d Your ProjectPath&&Your CMD co ...

  5. C#使用Timer.Interval指定时间间隔与指定时间执行事件

    C#中,Timer是一个定时器,它可以按照指定的时间间隔或者指定的时间执行一个事件. 指定时间间隔是指按特定的时间间隔,如每1分钟.每10分钟.每1个小时等执行指定事件: 指定时间是指每小时的第30分 ...

  6. php 执行计划任务方式之 linux crontab 执行命令

    一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动c ...

  7. Linux Shell编程(22)——时间/日期 命令

    date直接调用, date 就会打印日期和时间到 stdout 上. 这个命令有趣的地方在于它的格式化和分析选项上.time输出统计出来的命令执行的时间.touch这是一个用来更新文件被存取或修改的 ...

  8. [转]python3之paramiko模块(基于ssh连接进行远程登录服务器执行命令和上传下载文件的功能)

    转自:https://www.cnblogs.com/zhangxinqi/p/8372774.html 阅读目录 1.paramiko模块介绍 2.paramiko的使用方法 回到顶部 1.para ...

  9. [转]oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务。

    oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务. 一.查询系统中的job,可以查询视图 --相关视图 select * from dba_jobs; selec ...

随机推荐

  1. 使用sysbench测试mysql及postgresql(完整版)

    使用sysbench测试mysql及postgresql(完整版) 转载请注明出处https://www.cnblogs.com/funnyzpc/p/14592166.html 前言 使用sysbe ...

  2. Distributed | Raft

    1. 复制状态机 一致性算法是在复制状态机的背景下产生的.在这种方法下,一组服务器的状态机计算相同状态的相同副本,即使某些服务器宕机,也可以继续运行. 复制状态机通常使用复制日志实现,每个服务器存储一 ...

  3. ASP.NET扩展库之Http日志

    最佳实践都告诉我们不要记录请求的详细日志,因为这有安全问题,但在实际开发中,请求的详细内容对于快速定位问题却是非常重要的,有时也是系统的强力证据.Xfrogcn.AspNetCore.Extensio ...

  4. BUAA_OS lab3 难点梳理

    BUAA_OS lab3 难点梳理 实验难点 进程创建 对于初始化部分,首先需要在pmap.c中修改mips_vm_init()函数,为envs开空间,并map到UENVS空间. 其次,模仿page_ ...

  5. 目标检测性能评价——关于mAP计算的思考

    1. 基本要求 从直观理解,一个目标检测网络性能好,主要有以下表现: 把画面中的目标都检测到--漏检少 背景不被检测为目标--误检少 目标类别符合实际--分类准 目标框与物体的边缘贴合度高-- 定位准 ...

  6. IDEA创建XML文件没有Spring Config选项

    我在resources目录下导入3个配置文件时,applicationContext-common.xml文件中有4处http地址红色报错,下图为修正后的图片 了解到可能是由于父工程的pom文件中没有 ...

  7. Pycharm Fiddler Requests https in _create raise ValueError("check_hostname requires server_hostname

    打开Fiddler, 开启抓取https,  在PyCharm中使用requests 发送https请求, 遇到  in _create raise ValueError("check_ho ...

  8. JMeter发送get请求并分析返回结果

    在实际工作的过程中,我们通常需要模拟接口,来进行接口测试,我们可以通过JMeter.postman等多种工具来进行接口测试,但是工具的如何使用对于我们来说并不是最重要的部分,最重要的是设计接口测试用例 ...

  9. UI自动化测试框架:关键字驱动+数据驱动

    1. 关键字驱动框架简介 2. 工程结构说明 3. 工程代码实现 action 包  page_action.py business_process 包 case_process.py data_so ...

  10. Netty 框架学习 —— 第一个 Netty 应用

    概述 在本文,我们将编写一个基于 Netty 实现的客户端和服务端应用程序,相信通过学习该示例,一定能更全面的理解 Netty API 该图展示的是多个客户端同时连接到一台服务器.客户端建立一个连接后 ...