我想从crontab运行一个命令。而不是只为一个命令创建一个bash文件,可以像这样运行一个crontab:
# Everyday at 3 am, restart the server.
0 3 * * * 'sudo shutdown -r now'
而不是:
0 3 * * * /usr/local/bin/restart.bash
可以这样做吗?
答案 0 :(得分:0)
是的,您可以在线输入命令,但必须输入与在命令行中输入的命令相同。您不在命令行上键入单引号'
,因此您不应在crontab中键入它们。
最后,必须在root crontab中运行需要root访问权限的命令。 (即使用sudo crontab -e
而不是普通crontab -e
进行修改,或者在键入su -
之前使用crontab -e
以root用户身份登录
因此,在您的示例中,您应该在crontab中输入:
# Everyday at 3 am, restart the server.
0 3 * * * shutdown -r now
(sudo无效,删除单引号)