歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

CentOS命令at: 在指定的時間執行任務

在指定的時間執行任務。

命令格式

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

at [-V] [-q queue] [-f file] [-mldbv] -t time_arg

at -c job [job...]

命令參數

-V

在標准錯誤流上打印版本號

-q queue

使用指定的隊列。一個隊列以單一的字母命名,有效的命名范圍是 a-z 和 A-Z。at 命令的缺省隊列是 a,batch 命令的缺省隊列是 b。字母的順序越高,隊列的優先級則越低。特殊隊列 "=" 是為當前正在執行的任務而保留的。

-m

當任務完成時發送郵件給用戶即使沒有輸出。

-f

從指定的文件而不是標准輸出讀取任務。

-l

列出當前用戶的 at 任務列表。對與 root 用戶,則列出所有用戶的 at 列表。

-d

根據任務編號刪除任務。

-v

顯示任務將要執行的時間。

-c

連接命令行中列出的作業並輸出到標准輸出。

-t time_arg

指定任務的運行時間 time_arg。 time_arg 的格式為 [[CC]YY]MMDDhhmm。

實例

a) 10 分鐘後執行任務

huey@huey-K42JE:~$ at now + 5 minutes

at> echo 'hello world' >> at.out

at> <EOT>

job 3 at Tue May 12 22:16:00 2015

b) 3 天後下午 4 點時執行任務

huey@huey-K42JE:~$ at 4pm + 3 days

at> echo 'hello world' >> at.out

at> <EOT>

job 4 at Fri May 15 16:00:00 2015

c) 7 月 31 號上午 10 點時執行任務

huey@huey-K42JE:~$ at 10am Jul 31

at> echo 'hello world' >> at.out

at> <EOT>

job 5 at Fri Jul 31 10:00:00 2015

d) 明天凌晨 1 點時執行任務

huey@huey-K42JE:~$ at 1am tomorrow

at> echo 'hello world' >> at.out

at> <EOT>

job 7 at Wed May 13 01:00:00 2015

e) 周三的下午 4 點時執行任務

huey@huey-K42JE:~$ at 4pm WED

at> echo 'hello world' >> at.out

at> <EOT>

job 8 at Wed May 13 16:00:00 2015

f) 在 2015-05-20 12:00:00 時執行任務

huey@huey-K42JE:~$ at -t "201505201200"

at> echo 'hello world' >> at.out

at> <EOT>

job 9 at Wed May 20 12:00:00 2015

g) 列出當前用戶的 at 任務列表

復制代碼

huey@huey-K42JE:~$ atq

9 Wed May 20 12:00:00 2015 a huey

8 Wed May 13 16:00:00 2015 a huey

6 Tue May 12 22:21:00 2015 a huey

5 Fri Jul 31 10:00:00 2015 a huey

4 Fri May 15 16:00:00 2015 a huey

7 Wed May 13 01:00:00 2015 a huey

復制代碼

h) 刪除編號為 6 的任務

huey@huey-K42JE:~$ atrm 6

相關命令

atq - 相當於 at -l

atrm - 相當於 at -d

batch - 當系統負載許可時,也就是平均負載量低於 0.8 時,執行任務。 其用法與 at 命令類似。

其他事項

關於時間的說明可以參考 /usr/share/doc/at-3.1.10/timespec 文件。

Copyright © Linux教程網 All Rights Reserved