#ssh #cron #remote-server
#ssh #cron #удаленный сервер
Вопрос:
Я хочу запускать скрипт оболочки bash каждые 7 утра каждый день. Но это не сработало. Это команды.
00 07 * * * / usr / bin / sh /home/Download/download.sh
я попытался запустить на локальном устройстве. Когда я запускаю его на локальном устройстве, crontab работает нормально, но когда я пытаюсь запустить удаленный сервер, он не запускается. есть какое-либо решение в этом случае?
Комментарии:
1. Почему вы ставите пробелы между всеми частями
/usr/bin/sh
?
Ответ №1:
Я предполагаю, что вы хотите запустить /home/Download/download .sh каждый день в 7 утра.
Сначала убедитесь, что ваш файл является исполняемым:
chmod x /home/Download/download.sh
В зависимости от вашего компьютера путь к sh
может отличаться. Проверьте это с which sh
помощью команды. В большинстве случаев это /bin/sh
так, что ваш crontab будет выглядеть так:
0 7 * * * /bin/sh /home/Download/download.sh
Но, тем не менее, я думаю, вам это не нужно /bin/sh
, поэтому ваш crontab должен выглядеть так:
0 7 * * * /home/Download/download.sh
Комментарии:
1. Файл не обязательно должен быть исполняемым, если вы запустите его с помощью
/bin/sh filename
Ответ №2:
Один первый
sudo crontab -e
Второй
chmod x /home/Download/download.sh
и последнее.
0 7 * * * /home/Download/download.sh
Комментарии:
1. Сначала должен быть chmod, затем crontab. В противном случае вам придется снова закрыть crontab и снова открыть.
2. @charly1212 Порядок не имеет значения. Вам просто нужно сделать
chmod
это до 7 утра на следующий день.