Schedule Cron wih Bash



这是我想要运行的命令:

00 03 * * * backup.sh

我知道这将在每天凌晨 3 点运行脚本 backup.sh。如何使用 bash 脚本在我的 linux 服务器上添加此 cron 命令?

如何使用 bash 脚本在我的 linux 服务器上添加此 cron 命令?

如果要以 root 身份运行它,可以将一个名为 backup 的文件放在名为 /etc/cron.d中,其中包含以下内容:

00 03 * * * root backup.sh

这假设backup.sh在标准PATH中,您可能希望在此处使用完全限定的路径,而不是依赖于PATH

00 03 * * * root /path/to/bin/backup.sh

在许多发行版上,您还可以将backup.sh脚本放入(可能通过符号链接)到类似 /etc/cron.daily 的内容中,它将每晚运行。 这通常比编写自己的 crontab 条目更简单、更易于维护。

如果要以用户身份运行此内容,可以运行...

crontab -e

。要编辑您自己的 crontab 文件并在那里添加条目:

00 03 * * * /path/to/bin/backup.sh

请注意,我们不需要指定用户名(仅在/etc/cron.d/etc/crontab和其他全局系统位置中才需要。

作为根:

echo "00 03 * * * root backup.sh" >>/etc/crontab

echo "00 03 * * * root backup.sh" >/etc/cron.d/mybackupjob

作为您自己的用户:

crontab -l >tmp; echo "00 03 * * * backup.sh" >>tmp; crontab tmp; rm tmp

你知道/etc/cron.d 目录,对吧?如果没有,请键入"man cron"。

crontab -e将尝试调用您的EDITOR,因此您的第一个脚本可以将其设置为第二个脚本,该脚本只需将有问题的行附加到crontab:

#!/bin/sh
EDITOR=/path/to/second/script crontab -e

第二个脚本:

#!/bin/sh
echo "00 03 * * * /path/to/bin/backup.sh" >> $1

相关内容

  • 没有找到相关文章

最新更新