Linux

如何列印 at 作業的內容?

  • March 19, 2020

我有一個 Debian 盒子,裡面有一些使用at. 我知道我可以使用 列出作業及其時間atq,但是除了偷看之外,有沒有辦法列印出它們的內容/var/spool/cron/atjobs

at -c jobnumber將列出一個工作。如果您想查看所有這些,您可以創建一個腳本,例如

#!/bin/bash
MAXJOB=$(atq | head -n1 | awk '{ print $1; }')
for each in $(seq 1 $MAXJOB); do echo "JOB $each"; at -c $each; done 

可能有更短的方法可以做到這一點,我只是把它從我的腦海中彈出:)

基於先前的響應,這列出了每個作業的行,從atq顯示作業編號和計劃時間,然後是要執行的命令,按時間順序(而不是作業編號)排序:

for j in $(atq | sort -k6,6 -k3,3M -k4,4 -k5,5 |cut -f 1); do atq |grep -P "^$j\t" ;at -c "$j" | tail -n 2; done

生產,例如

48  Fri Mar 10 15:13:00 2017 a root
/usr/local/bin/a-command

47  Fri Mar 10 15:14:00 2017 a root
/usr/local/bin/another-command

引用自:https://serverfault.com/questions/174678