删除所有的at工作


32

我知道要删除at必须使用的预定作业atrm "numjob1 numjob2",但是是否有一种简单的方法可以对所有作业执行此操作?

Answers:






1

这是我的xargs版本,它避免使用花括号,并且希望很直观:

atq | cut -f 1 | xargs atrm

您还可以按时间戳记/用户ID对特定作业进行grep,然后将其删除:

atq | grep "2018-10-22 16:" | cut -f 1 | xargs atrm

0

我在atd中有58k多个作业(有人重新启动了服务器,并且由于某种原因atd服务未启动)。对于非常高的队列,使用atrm删除作业非常痛苦。

我停止了atd并从/ var / spool / atjobs中删除了所有目录,并从/ var / spool / atspool中删除了文件。对我来说,它奏效了。

rm -rf /var/spool/atjobs/* ; rm /var/spool/atspool/*

您永远不会说什么atd重新启动,是否成功了,也不会提及什么Unix将是合适的解决方案。您如何确保未删除其他用户的作业?
— 库沙兰达

好!抱歉! 该过程后需要启动atd。我的解决方案适用于“ SUSE Linux Enterprise Server 12”。但我认为它可以在其他发行版中使用。我在“ man”中找到目录的信息。在我的情况下,只有root使用atd,然后删除文件是安全的。
— 费利佩
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.