电子商务网站规划与建设,达内教育,长春网站建设哪家公司好,重庆建筑人员证书查询Linux系统之一次性计划任务at命令的基本使用 一、at命令介绍二、at命令的使用帮助2.1 at命令的help帮助信息2.2 at命令的语法解释 三、at命令的日常使用3.1 立即执行一次性任务3.2 指定时间执行一次性任务3.3 查询计划任务3.4 其他指定时间用法3.5 删除已经设置的计划任务3.6 显… Linux系统之一次性计划任务at命令的基本使用 一、at命令介绍二、at命令的使用帮助2.1 at命令的help帮助信息2.2 at命令的语法解释 三、at命令的日常使用3.1 立即执行一次性任务3.2 指定时间执行一次性任务3.3 查询计划任务3.4 其他指定时间用法3.5 删除已经设置的计划任务3.6 显示某计划任务详细内容 四、at与crontab命令的区别五、at命令的使用注意事项 一、at命令介绍 at命令是一个计划任务工具可以让用户在指定的时间执行某个命令或者脚本at命令用于管理一次性计划任务。 二、at命令的使用帮助
2.1 at命令的help帮助信息 在命令行中使用help查询at命令的使用帮助信息 [rootjeven ~]# at --help
at: invalid option -- -
Usage: at [-V] [-q x] [-f file] [-mMlbv] timespec ...at [-V] [-q x] [-f file] [-mMlbv] -t timeat -c job ...atq [-V] [-q x]at [ -rd ] job ...atrm [-V] job ...batch2.2 at命令的语法解释
语法
at [-V] [-q 队列] [-f 文件] [-mldbv] 时间 at -c 作业 [作业...]选项
-f指定包含具体指令的任务文件
-q指定新任务的队列名称
-l显示待执行任务的列表
-d删除指定的待执行任务
-m任务执行完成后向用户发送E-mail。参数
日期时间指定任务执行的日期时间。三、at命令的日常使用
3.1 立即执行一次性任务 立即执行一次性任务使用 at now 命令输入该命令后会在终端下面出现一个at提示符此时输入要执行的命令然后按下CtrlD即可。 [rootjeven ~]# at now
at echo hello /tmp/aa.txt
at EOT
job 1 at Thu Nov 16 16:16:00 2023这个命令会在当前时间执行一次性任务将字符串hello 追加到/tmp/aa.txt文件中。 [rootjeven ~]# cat /tmp/aa.txt
hello3.2 指定时间执行一次性任务 输入该命令后会在终端下面出现一个at提示符此时输入要执行的命令然后按下CtrlD即可 [rootjeven ~]# at 16:22
at echo test /tmp/test.txt
at EOT
job 2 at Thu Nov 16 16:22:00 2023在16:22时间后查询字符串test已成功追加到/tmp/test.txt文件中。 [rootjeven ~]# cat /tmp/test.txt
test3.3 查询计划任务 计划任务设定后在没有执行之前我们可以用atq命令来查看系统没有执行工作任务。 [rootjeven ~]# atq
2 Thu Nov 16 16:22:00 2023 a root3.4 其他指定时间用法
指定2天后的下午5点执行命令df -hT命令
[rootjeven ~]# at 5:00pm2 days
at /bin/df -hT
at EOT
job 3 at Sat Nov 18 17:00:00 2023明天上午8点将时间输出到指定文件。
[rootjeven ~]# at 08:00am tomorrow
at date /tmp/date.txt
at EOT
job 4 at Fri Nov 17 08:00:00 20233.5 删除已经设置的计划任务 查询还未执行的计划任务 [rootjeven ~]# at -l
3 Sat Nov 18 17:00:00 2023 a root
4 Fri Nov 17 08:00:00 2023 a root删除已经设置的计划任务 atrm 33.6 显示某计划任务详细内容 显示某计划任务详细内容 at -c 4#!/bin/sh
# atrun uid0 gid0
# mail root 0
umask 22
XDG_SESSION_ID8; export XDG_SESSION_ID
HOSTNAMEjeven; export HOSTNAME
SHELL/bin/bash; export SHELL
HISTSIZE1000; export HISTSIZE
SSH_CLIENT192.168.3.168\ 56614\ 22; export SSH_CLIENT
SSH_TTY/dev/pts/0; export SSH_TTY
http_proxyhttp://127.0.0.1:38457; export http_proxy
USERroot; export USER
LS_COLORSrs0:di01\;34:ln01\;36:mh00:pi40\;33:so01\;35:do01\;35:bd40\;33\;01:cd40\;33\;01:or40\;31\;01:mi01\;05\;37\;41:su37\;41:sg30\;43:ca30\;41:tw30\;42:ow34\;42:st37\;44:ex01\;32:\*.tar01\;31:\*.tgz01\;31:\*.arc01\;31:\*.arj01\;31:\*.taz01\;31:\*.lha01\;31:\*.lz401\;31:\*.lzh01\;31:\*.lzma01\;31:\*.tlz01\;31:\*.txz01\;31:\*.tzo01\;31:\*.t7z01\;31:\*.zip01\;31:\*.z01\;31:\*.Z01\;31:\*.dz01\;31:\*.gz01\;31:\*.lrz01\;31:\*.lz01\;31:\*.lzo01\;31:\*.xz01\;31:\*.bz201\;31:\*.bz01\;31:\*.tbz01\;31:\*.tbz201\;31:\*.tz01\;31:\*.deb01\;31:\*.rpm01\;31:\*.jar01\;31:\*.war01\;31:\*.ear01\;31:\*.sar01\;31:\*.rar01\;31:\*.alz01\;31:\*.ace01\;31:\*.zoo01\;31:\*.cpio01\;31:\*.7z01\;31:\*.rz01\;31:\*.cab01\;31:\*.jpg01\;35:\*.jpeg01\;35:\*.gif01\;35:\*.bmp01\;35:\*.pbm01\;35:\*.pgm01\;35:\*.ppm01\;35:\*.tga01\;35:\*.xbm01\;35:\*.xpm01\;35:\*.tif01\;35:\*.tiff01\;35:\*.png01\;35:\*.svg01\;35:\*.svgz01\;35:\*.mng01\;35:\*.pcx01\;35:\*.mov01\;35:\*.mpg01\;35:\*.mpeg01\;35:\*.m2v01\;35:\*.mkv01\;35:\*.webm01\;35:\*.ogm01\;35:\*.mp401\;35:\*.m4v01\;35:\*.mp4v01\;35:\*.vob01\;35:\*.qt01\;35:\*.nuv01\;35:\*.wmv01\;35:\*.asf01\;35:\*.rm01\;35:\*.rmvb01\;35:\*.flc01\;35:\*.avi01\;35:\*.fli01\;35:\*.flv01\;35:\*.gl01\;35:\*.dl01\;35:\*.xcf01\;35:\*.xwd01\;35:\*.yuv01\;35:\*.cgm01\;35:\*.emf01\;35:\*.axv01\;35:\*.anx01\;35:\*.ogv01\;35:\*.ogx01\;35:\*.aac01\;36:\*.au01\;36:\*.flac01\;36:\*.mid01\;36:\*.midi01\;36:\*.mka01\;36:\*.mp301\;36:\*.mpc01\;36:\*.ogg01\;36:\*.ra01\;36:\*.wav01\;36:\*.axa01\;36:\*.oga01\;36:\*.spx01\;36:\*.xspf01\;36:; export LS_COLORS
MAIL/var/spool/mail/root; export MAIL
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/node-v14.17.0-linux-x64/bin/:/usr/local/bin:/root/bin; export PATH
PWD/root; export PWD
LANGen_US.UTF-8; export LANG
https_proxyhttps://127.0.0.1:38457; export https_proxy
HISTCONTROLignoredups; export HISTCONTROL
SHLVL1; export SHLVL
HOME/root; export HOME
LOGNAMEroot; export LOGNAME
XDG_DATA_DIRS/root/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share; export XDG_DATA_DIRS
SSH_CONNECTION192.168.3.168\ 56614\ 192.168.3.166\ 22; export SSH_CONNECTION
LESSOPEN\|\|/usr/bin/lesspipe.sh\ %s; export LESSOPEN
XDG_RUNTIME_DIR/run/user/0; export XDG_RUNTIME_DIR
NODE_HOME/root/node-v14.17.0-linux-x64/bin/; export NODE_HOME
cd /root || {echo Execution directory inaccessible 2exit 1
}
${SHELL:-/bin/sh} marcinDELIMITER200a5ac0
date /tmp/date.txtmarcinDELIMITER200a5ac0四、at与crontab命令的区别
at和crontab都是用于任务调度的命令但是它们的使用场景和运行方式不同at命令适用于一次性的任务调度而crontab命令适用于周期性的任务调度。。 at命令是一次性的任务调度它允许用户将任务安排到指定的时间点运行一次该任务将在指定的时间点被执行一次后立即被销毁。at命令适用于只需要执行一次的任务例如立即发送一封电子邮件或在明天早上备份系统。 crontab命令则可以定期重复执行指定的任务它可以在固定的时间间隔内不间断地运行任务。crontab命令常用于周期性的任务例如每天备份数据库或定时清理日志文件。
五、at命令的使用注意事项 at命令不适用于需要用户交互的程序它只适用于一些可以直接运行的命令或程序。 at命令需要root用户或具备特殊权限的用户才能进行操作。 at命令虽然可以在指定的时间运行命令或程序但不保证一定会在该时间运行因为系统可能会出现一些延迟。 at命令可以运行多个命令或程序只需要将它们以分号隔开即可。 at命令在执行命令或程序时会自动在后台进行不会在当前终端显示结果如果需要查看结果需要手动查看日志文件或者输出到文件中。 at命令的执行时间必须按照24小时制的时间格式指定。 at命令可以使用atq命令查看等待运行的任务列表使用atrm命令删除未执行的任务。