Задержка выполнения php скриптов в bash

91
12 июня 2021, 23:40

Сервер Ubuntu

Есть ряд PHP файлов, которые нужно запустить по очереди, с определенной задержкой.

Можно для каждого настроить время выполнения в cron, но, придется создавать много записей, и при необходимости изменения времени, много править.

Пришла идея по cron'у запускать bash файл, в котором перечислен список php файлов, но не получается выставить интервал запуска. Пытался:

/usr/bin/php /var/www/html/site.ru/parser/parse.php 2>&1
sleep 300
/usr/bin/php /var/www/html/site.ru/parser/parse2.php >/dev/null 2>&1

но функцию sleep 300 не понимает, выдает ошибку:

sleep: invalid time interval '300\r'

Вопрос: как корректно выставить задержку. Либо использовать другие варианты решения задачи, интересно было бы услышать предложения.

UPD

Закрыл строки ;

/usr/bin/php /var/www/html/site.ru/parser/parse.php 2>&1;
sleep 300;
/usr/bin/php /var/www/html/site.ru/parser/parse2.php >/dev/null 2>&1;

кажется, отрабатывает, задержку учитывает.

но в консоли тем не менее выдает ошибки:

line 2: $'\r': command not found

файл сохранял в notepad++ в формате .bash

Answer 1

В линуксе перевод строки это \n, а в винде \r\n. Вы наверняка писали скрипт под виндой и в файл закрался \r. Удалите \r и всё заработает (и первый вариант без ; тоже).

READ ALSO
Проблема в размещении картинок рядом. PHP

Проблема в размещении картинок рядом. PHP

Нужно, что-бы логотипы были рядом друг с другом(шли в ряд)

88
Android обращение к ресурсам из адаптера

Android обращение к ресурсам из адаптера

Здравстуйте, уважаемые кодеры и программисты имеется следующий адаптер для ViewPager и Tablayout, и значения заголовков берутся из массива, но тк

87
JavaFX и векторные изображения

JavaFX и векторные изображения

Подскажите самый простой метод вывода векторного изображения (расширения SVG, допустим) в контейнер в JavaFX? Имеется ли аналог контейнера ImageView...

66