如果我在某些 crontab 任务前面添加 #,那么它将不起作用并表现为注释?对吗?我想禁用某些任务一段时间,直到我想启用它为止。
# * * * * /home/user/xx
谢谢
答案1
是的,#
在 cron 前面的一行将其注释掉。
如果它位于某一行的一部分,它还会注释掉其后面的任何内容。
您不需要重新启动 cron 来使更改的 crontab 生效,否则任何更改了自己的 crontab 的用户都需要 root 访问权限才能重新启动 cron 来使自己的 crontab 生效。
您确实需要的是让 cron 重新读取您的 crontab,您可以通过多种方式做到这一点。编辑 crontab 的安全方法是将其列到文件中,如下所示:
crontab -l > my.crontab
然后编辑该文件(在本例中为:my.crontab),然后将该文件加载回 cron:
crontab ./my.crontab
如果您只进行少量编辑,则可以用以下方式进行:
crontab -e
它将在您在 $EDITOR 环境变量中设置的编辑器中打开您的 crontab。
这两种方法都会检查 crontab 的语法,加载它,并让 cron 重新读取它。当你尝试直接在磁盘上编辑 crontab 文件,然后不做任何事情告诉 cron 重新读取它时,你就会遇到麻烦。
答案2
-Sign#
用于注释 crontabs 中的文本。
但是,编辑 crontab 后你必须重新开始cron 使更改生效。使用以下命令:
user@host:~# sudo service cron restart