我只想暂停一切。不要执行在crontab -l上列出的任何内容。

#1 楼

crontab -e然后注释掉不想使用#的每一行。

评论


尝试100个工作...

–梅林
20-05-19在4:40

@merlin使用列编辑在vi / vim中移动

–旋风
20年6月8日13:33

#2 楼

首先,备份crontab:

crontab -l > my_cron_backup.txt


,然后可以将其清空:

crontab -r


要恢复:

crontab my_cron_backup.txt
crontab -l


评论


当/ tmp损坏时(并且如果您的crontab -e在/ tmp中使用mktemp,则这特别有用)。

–李凯文
2015年3月23日在15:17



+1最后,这对我有用。谢谢

– Pavan
2015年6月4日23:25



@alex这应该是公认的答案

–路易斯·法拉罗
18年9月7日在8:52

我正在寻找crontab -r。谢谢 !

– forzagreen
19年2月26日在13:48

#3 楼

您有root访问权限吗?只需暂停cron

sudo /etc/init.d/crond stop


,然后在准备就绪时重新启动它

sudo /etc/init.d/crond start


评论


假设您要停止对所有用户(包括root用户)的crontab。选定的答案和kubanskamac的答案将仅对当前(所需?)用户起作用。

–凯文K
09年12月15日在0:20

我们的crond服务已停止。这为我们指明了正确的方向,以检查crond是否正在运行,然后重新启动。

– Paul
16年5月24日在12:51

如果您使用的是Ubuntu,则可以使用sudo服务cron stop

–乔尔
16-10-28在11:14

在Debian上,这是/etc/init.d/cron停止。

– Faheem Mitha
17年7月19日在5:52

如今,在Debian上@Faheem也提供cron stop服务。

–斯蒂芬·基特(Stephen Kitt)
17年7月19日在8:42

#4 楼

如果使用vi作为编辑器,则只需在命令模式下输入:%s/^/#/。在所有行(%)中,它用散列(#)替换(s ///)行(^)的开头。

评论


如果您不使用vi作为默认编辑器,则可以像编辑器= vi一样“强制”使用vi。 crontab -e,然后您可以使用上面的技巧。

–贝塔利斯塔
13年1月25日在11:53

要取消注释,命令是:%s / ^#//

–NP01
13年8月14日在3:18



#5 楼

对上述选项感到不满意,因为它们不是一个衬里。

禁用crontab -l | perl -nle 's/^([^#])/# /;print' | crontab

启用crontab -l | perl -nle 's/^#\s*([0-9*])//;print' | crontab

用法示例以显示它不会禁用注释)

评论


也可以在cronjob crontab -l中查找特定详细信息。 perl -nle's / ^#\ s *([0-1 *])/ $ 1 /;如果/.+mytexttofind,则打印+ /'

–詹森
16年11月6日在6:10



您能否解释为什么评论不受影响?您用来检测它们的模式是什么?

– Sopalajo de Arrierez
17/12/24在23:39

嗯,在Debian Jessie下,我得到以下错误:crontab:用法错误:必须为替换指定文件名。似乎在使用不带任何参数的crontab时必须指定一个文件(?)(默认情况下将被替换)。

–fritzmg
18/12/4在14:06

#6 楼

在我有限的测试中,将shell设置为/ bin / false是可行的。您仍然会在日志中看到/opt/job.sh正在执行,但这只是一个小问题:

SHELL=/bin/false

*/1 * * * *    root  /some/job.sh


#7 楼

在我所知道的任何Unix / Linux风格中:

mv /var/spool/cron  /var/spool/cron_is_disabled


此: />,但不是系统/ etc / crontab(/etc/cron.daily.etc。)
在重新启动后仍然存在

#8 楼

我从@segaps提供的答案中得到了这个主意

要禁用:
crontab -l | awk '{print "# "}' | crontab


segaps提供的解决方案的唯一问题是,它将取消注释用户已经评论过的作业。

评论


禁用命令应为:crontab -l | awk'{print“#” $ 0}'| crontab

–赵国Ray
20 Aug 25'8:49



#9 楼

为此,请使用nano作为编辑器:

sudo env EDITOR=nano crontab -e


然后注释掉不想使用#
运行的每一行

#10 楼

您可以像这样使用以下代码:

crondisable
cronenable

crondisable some_other_user
...


zsh代码(放入您的.zshrc):