linuxshellat命令
-
at命令是Linux系统中一个用于延时执行命令的工具。通过at命令,可以在指定的时间点执行命令,而不需要连续地等待执行。
使用at命令,可以在命令行终端上直接输入指令,或者将指令写入一个文件,然后通过at命令调用执行。at命令的基本语法如下:
at [选项] 时间时间可以是绝对时间,也可以是相对时间。绝对时间的格式为HH:MM,表示在当天的指定时间执行。相对时间的格式为HH:MM +n,表示从当前时间开始,n分钟后执行。
at命令的常用选项有:
-q 队列选择,指定任务的队列,默认为a队列
-f 指定执行的脚本文件
-m 执行完命令后,如果输出内容,则发送邮件通知
-l 列出当前计划执行的任务
-d 删除指定的任务以下是at命令的一些例子:
1. 执行一次性的命令:
at 10:30
ls > /tmp/list.txt
(表示在10:30执行ls命令,并将结果输出到/tmp/list.txt)2. 执行一个脚本文件:
at 18:00 -f /path/to/script.sh
(表示在18:00执行脚本文件/path/to/script.sh)3. 执行相对时间的命令:
at now + 1 hour
echo “Hello world” > /tmp/file.txt
(表示在当前时间一小时后执行echo命令,并将结果输出到/tmp/file.txt)通过at命令,可以实现定时执行任务的需求,非常方便。但需要注意的是,at命令的执行是依赖于atd守护进程的,如果该进程未启动,则无法执行at命令。
2年前 -
在Linux命令行中,at命令用于在指定的时间执行一次性任务。它允许用户在指定的时间执行自定义的脚本、命令或程序。
以下是关于at命令的一些重要信息和用法:
1. 语法:at [-f file | -l | -r job | -d job | -q letter | -v | -c command | -s] [time]
– -f file:指定要运行的脚本文件。
– -l:列出当前计划中的任务。
– -r job:从当前计划中删除指定的任务。
– -d job:从当前计划中删除指定的任务,并将其发送到黑洞。
– -q letter:设置任务的优先级,默认为a。
– -v:启用详细输出模式。
– -c command:直接在命令行中指定要运行的命令。
– -s:静默模式。
– time:指定任务执行的时间。2. 时间格式:at命令的时间参数可以使用多种格式指定,包括绝对时间、相对时间和特殊时间:
– 绝对时间:hh:mm或hh:mm AM/PM格式。
– 相对时间:+n minutes/hours/days/weeks/months/years格式(例如+10 minutes表示10分钟后)。
– 特殊时间:midnight(午夜)、noon(中午)、teatime(下午4点)。3. at和batch命令的区别:at命令用于指定任务在特定时间运行一次,而batch命令用于在系统负载较低的时间运行一次性任务。
4. 示例用法:
– 在特定时间运行命令:at 12:00 PM -f script.sh(在下午12点运行指定的脚本文件)。
– 在相对时间后运行命令:at now +10 minutes -c “echo ‘Hello, World!'”(10分钟后执行echo命令)。
– 删除计划中的任务:at -r job-id(通过job-id删除指定的任务)。5. 限制和注意事项:
– at命令需要superuser权限来安排其他用户的任务。
– at命令的运行依赖于atd服务,该服务必须在后台运行。
– 任务被安排在当前用户的标准输入、输出和错误设备上,默认不保存任务的输出结果。总之,at命令是Linux系统中一个强大的工具,可用于在特定的时间点执行一次性任务,非常适用于需要延迟执行的脚本、命令或程序。通过at命令,用户可以根据自己的需求灵活安排任务的执行时间,并可以轻松地管理和删除计划中的任务。
2年前 -
at命令是Linux系统下的一个任务调度命令,它允许用户在指定时间执行一次指定的命令。可以用于系统上晚上空闲时执行的脚本任务,或者在不在计算机前时执行的任务。
使用at命令,可以将要执行的命令添加到任务队列中,并在指定的时间执行。这样用户可以预先安排任务,而不必一直等待执行时间。
下面是at命令的使用方法和操作流程:
1. 确认at命令已经安装:在终端中输入 `at` 命令,如果出现一些帮助信息,说明at命令已安装,否则需要先使用包管理器安装at命令。
2. 添加任务:使用 `at` 命令加上指定的时间参数来添加任务。例如,要在下午2点执行一条命令,可以使用以下命令:
“`
$ at 14:00
“`
这将进入at命令的编辑模式。3. 输入要执行的命令:在at命令的编辑模式中,输入要执行的命令。可以是任何Linux系统下可执行的命令或脚本。例如,要执行一个shell脚本,可以输入:
“`
$ ./myscript.sh
“`4. 保存任务并退出编辑模式:按下CTRL + D键保存任务并退出编辑模式。at命令将会显示 “job <任务编号> at <执行时间>” 的消息,表示任务已成功添加到任务队列中。
5. 查看任务列表:可以使用 `atq` 命令来查看当前的任务列表。例如,使用以下命令:
“`
$ atq
“`
将会列出所有任务的任务编号和执行时间。6. 删除任务:如果需要删除某个任务,可以使用 `atrm` 命令加上任务编号来删除。例如,要删除任务编号为1的任务,可以使用以下命令:
“`
$ atrm 1
“`7. 查看任务输出:任务执行完成后,at命令会将输出结果发送到用户的邮件中。可以使用 `mail` 命令来查看邮件内容。例如,使用以下命令来查看最新的一封邮件:
“`
$ mail
“`
在邮件列表中选择要查看的邮件,并输入 `q` 退出邮件查看。使用at命令时,需要注意以下事项:
– at命令默认使用当前用户的环境变量和工作目录。
– at命令默认将任务输出发送到用户的邮件中,如果不需要可以重定向输出到其他地方。
– at命令的时间格式是24小时制。
– at命令的任务队列通常是在系统重启后被清空。如果需要长期保存任务,请使用 `batch` 命令或者将任务添加到系统的定时任务中。2年前