如何在 Raspbian 上 运行 Bash 在 Crontab 中编写脚本?
How to run Bash Script in Crontab on Raspbian?
我已经在 Internet 上浏览了各种答案和回复,但似乎没有一个对我有用。我只想在 Raspberry PI 和 Raspbian 上使用 CRONTAB 每分钟 运行 一个 bash 脚本。
我有一个名为 autocon.sh 的脚本,我只是按如下方式输入了 crontab:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
...
1 * * * * root bash /home/pi/autocon.sh
但不会运行。
我做错了什么?
每分钟 运行 一个 cronjob,所有值都必须是星号。您的 cronjob 设置为 运行 在每小时整点后 1 分钟。
应该是:
* * * * * root bash /home/pi/autocon.sh
我不确定 'root' 部分的来源,但我猜你想要 运行 脚本作为 root?如果是这样,您需要将一个条目放入根 crontab,通过 运行ning:
sudo crontab -e
这将打开 root 用户 crontab 进行编辑,来自所述位置的任何 运行 都将 运行 具有 root 权限。
插入以下行:
* * * * * bash /home/pi/autocon.sh
应该这样做 :) 脚本中的 1 实际上表示 'run at 1 minute past the hour',因此在您的情况下,每小时过去 1 分钟 - 容易犯错!用*替换它意味着每分钟。
语法是:
minute - hour - day of month - month - day of week - command
此外,如果您使脚本可执行,如下所示:
sudo chmod +x /home/pi/autocon.sh
可以省略'bash'命令,直接使用:
* * * * * /home/pi/autocon.sh
除非您将顶部的两行用于特殊用途,否则您也可以省略它们。
为清楚起见,Barmar 对我的原文的评论 post:
In per-user crontab files you don't put the username. But in
/etc/crontab you do.
我已经在 Internet 上浏览了各种答案和回复,但似乎没有一个对我有用。我只想在 Raspberry PI 和 Raspbian 上使用 CRONTAB 每分钟 运行 一个 bash 脚本。
我有一个名为 autocon.sh 的脚本,我只是按如下方式输入了 crontab:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
...
1 * * * * root bash /home/pi/autocon.sh
但不会运行。 我做错了什么?
每分钟 运行 一个 cronjob,所有值都必须是星号。您的 cronjob 设置为 运行 在每小时整点后 1 分钟。
应该是:
* * * * * root bash /home/pi/autocon.sh
我不确定 'root' 部分的来源,但我猜你想要 运行 脚本作为 root?如果是这样,您需要将一个条目放入根 crontab,通过 运行ning:
sudo crontab -e
这将打开 root 用户 crontab 进行编辑,来自所述位置的任何 运行 都将 运行 具有 root 权限。
插入以下行:
* * * * * bash /home/pi/autocon.sh
应该这样做 :) 脚本中的 1 实际上表示 'run at 1 minute past the hour',因此在您的情况下,每小时过去 1 分钟 - 容易犯错!用*替换它意味着每分钟。
语法是:
minute - hour - day of month - month - day of week - command
此外,如果您使脚本可执行,如下所示:
sudo chmod +x /home/pi/autocon.sh
可以省略'bash'命令,直接使用:
* * * * * /home/pi/autocon.sh
除非您将顶部的两行用于特殊用途,否则您也可以省略它们。
为清楚起见,Barmar 对我的原文的评论 post:
In per-user crontab files you don't put the username. But in /etc/crontab you do.