it-roy-ru.com

Bash скрипт для запуска php скрипта

У меня есть php-скрипт, который я хочу запустить с помощью bash-скрипта, поэтому я могу использовать Cron для запуска php-скрипта каждую минуту или около того.

Насколько я знаю, мне нужно создать сценарий bash для обработки сценария php, который затем позволит мне использовать инструмент/таймер Cron.

Пока мне сказали, что мне нужно поставить:

#!/pathtoscript/testphp.php

в начале моего сценария php. Я не уверен, что делать отсюда ...

Любой совет? Благодарю.

38
mmmbaileys

Если вы установили PHP в качестве инструмента командной строки (попробуйте ввести php для терминала и посмотрите, работает ли он), ваша строка Shebang (#!) должна выглядеть следующим образом:

#!/usr/bin/php

Поместите это в начало вашего скрипта, сделайте его исполняемым (chmod +x myscript.php) и создайте задание Cron для выполнения этого скрипта (так же, как вы выполняете скрипт bash).

Вы также можете использовать php myscript.php.

64
Rafe Kettler
#!/usr/bin/env bash
PHP=`which php`
$PHP /path/to/php/file.php
13
FDisk

Постер предшественник ха дето ..

Se hai PHP installato come Strumento da riga di Comando ... la tua riga di Shebang (#!) Задание Deve apparire come: #!/usr/bin/php

Mentre Questo potrebbe essere vero ... solo perché œ возможная цифра php не имеет значения, что нужно делать с этим ... /usr/bin/php è Una posizione comune ... ma come con qualsiasi Shebang ... deve essere su misura per il tuo env.

un modo rapido per scoprire dove il tuo особенно неповторимый sis trova sul tuo $PATH, prova .. ➜which -a phpENTERЧе за меня ассомилья а ..

php is /usr/local/php5/bin/php
php is /usr/bin/php
php is /usr/local/bin/php
php is /Library/WebServer/CGI-Executables/php

Признаки и предварительные данные о том, что нужно сделать, чтобы это было очень быстро ... Вы можете найти свое единственное слово в Шебанге, в прямом эфире ... Вы должны объединиться в одно имя с другими людьми env, come si vede spesso , не нон так молто ди/траст та. BACI BACI.

12
Alex Gray

Вам просто нужно установить:

/usr/bin/php path_to_your_php_file

в вашем crontab.

7
Spyros

Я уверен, что что-то вроде этого - то, что вы ищете:

#!/bin/sh

php /pathToScript/script.php

Сохраните его с нужным именем скрипта (например, runPHP.sh) и предоставьте ему права на выполнение, тогда вы можете использовать его по своему усмотрению.

Правка: Вы также можете вообще не использовать скрипт bash и просто добавить команду «php ...» в crontab, если я не ошибаюсь.

Удачи!

6
Sergio Morales

Скрипт bash должен выглядеть примерно так:

#!/bin/bash
/usr/bin/php /path/to/php/file.php

Вам нужен исполняемый файл php (обычно находится в/usr/bin) и путь запуска скрипта php. Теперь вам нужно только поставить этот скрипт на crontab, и все готово!

4
Bogdan Constantinescu

быстрый способ выяснить, ГДЕ ВАШ конкретный исполняемый файл находится в вашем $ PATH, попробуйте.

Еще более быстрый способ узнать, где находится php ...

whereis php

Я запускаю команду debian и выше, показывая мне 

php: /usr/bin/php /usr/share/php /usr/share/man/man1/php.1.gz

Надеюсь, это поможет.

1
Eddie B

Если вы ничего не делаете в своем bash-скрипте, кроме запуска php, вы можете просто запустить php-скрипт из cron с помощью команды, например/usr/bin/php /path/to/your/file.php.

0
Costi Ciudatu

Я нашел php-cgi на моем сервере. И это на пути к окружающей среде, поэтому я смог бежать из любого места. Я успешно выполнил file.php в своем скрипте bash.

#!/bin/bash
php-cgi ../path/file.php

И скрипт вернул это после того, как PHP-скрипт был выполнен:

X-Powered-By: PHP/7.1.1 Тип содержимого: text/html; charset = UTF-8  

сделанный!

Кстати, сначала проверьте, работает ли он, проверив версию, введя команду php-cgi -v

0
Luis H Cabrejo