内联 crontab 命令?

内联 crontab 命令?

下面的 crontab 可以吗?

0 4 * * * /sbin/sudo shutdown -r now

我想从 crontab 运行单个命令 sudo shutdown -r now,而不必将其放入 bash 脚本中。

答案1

通常,sudocrontab.该程序在受限环境(尤其是非常有限且无控制的 tty)cron中运行命令。PATH虽然您可能可以通过安装严重的安全漏洞来实现此目的,但实现您可能想要的效果的正确方法是将命令放入shutdown -r nowroot 的crontab.

显然,您不会期望在凌晨 4 点在相关计算机上执行任何操作,但作为在极少数情况下执行此操作的预防措施,您可能需要给命令shutdown一些时间和真实的消息。然后,如果您在那里,您可以在该时间间隔内进行清理或中止关闭。当你花了半个小时编辑一些东西并且没有机会保存它之后,就出现了这样的东西,真是太遗憾了。

答案2

Ekhm 是的,阅读精彩的手册吗?

man crontab

   The  sixth  field  of  a line in a crontab entry is a string that shall be executed by sh at the specified times. A
   <percent-sign> character in this field shall be translated to a <newline>.  Any character preceded by a <backslash>
   (including the '%') shall cause that character to be treated literally. Only the first line (up to a '%' or end-of-
   line) of the command field shall be executed by the command interpreter. The other lines shall be made available to
   the command as standard input.

尽管我会小心使用 PATH,但我会包含完整路径/usr/bin/shutdown(可能需要更改/etc/sudoers)。

相关内容