簡體   English   中英

Bash 腳本運行 php 腳本

[英]Bash script to run php script

我有一個 php 腳本,我想使用 bash 腳本運行它,所以我可以使用 Cron 每分鍾左右運行 php 腳本。

據我所知,我需要創建 bash 腳本來處理 php 腳本,這將允許我使用 Cron 工具/計時器。

到目前為止,我被告知我需要輸入:

#!/pathtoscript/testphp.php

在我的 php 腳本的開頭。 我不知道從這里做什么......

有什么建議嗎? 謝謝。

如果您已將PHP安裝為命令行工具(嘗試向終端發送php並查看它是否有效),您的shebang( #! )行需要如下所示:

#!/usr/bin/php

將它放在腳本的頂部,使其可執行( chmod +x myscript.php ),並創建一個Cron作業來執行該腳本(與執行bash腳本的方式相同)。

你也可以使用php myscript.php

#!/usr/bin/env bash
PHP=`which php`
$PHP /path/to/php/file.php

之前的一張海報說..

如果您已將PHP安裝為命令行工具...您的shebang(#!)行需要如下所示: #!/usr/bin/php

雖然這可能是真的...只是因為你可以輸入php並不一定意味着php將會是... /usr/bin/php是一個常見的位置......但是和任何shebang一樣...它需要被定制為您的env

快速找出你的特定可執行文件位於$PATH ,試試..➜ which -a php ENTER ,對我來說看起來像..

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

第一個是默認我得到的,如果我只是在命令提示符下鍵入php ...但我可以在shebang中使用它們中的任何一個,或直接...你也可以將可執行文件名稱與env結合使用,如常見,但我真的不太了解/相信這一點 XOXO。

你只需要設置:

/usr/bin/php path_to_your_php_file

在你的crontab中。

我很確定這樣的東西就是你要找的東西:

#!/bin/sh

php /pathToScript/script.php

使用所需的腳本名稱(例如runPHP.sh)保存並賦予其執行權限,然后您可以隨意使用它。

編輯:你可能根本不使用bash腳本,只需將“php ...”命令添加到crontab,如果我沒有弄錯的話。

祝好運!

bash腳本應該是這樣的:

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

你需要php可執行文件(通常在/ usr / bin中找到)和要運行的php腳本的路徑。 現在你只需要將這個bash腳本放在crontab上就可以了!

快速找到你的$ PATH上你的特定可執行文件的位置,試試吧。

甚至更快找出php位置......

whereis php

我正在運行debian以及命令顯示我

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

希望有所幫助。

我在我的服務器上找到了php-cgi。 它在環境路徑上,所以我能夠從任何地方運行。 我在bash腳本中執行了succesfuly file.php

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

並且腳本在執行php腳本后返回:

X-Powered-By:PHP / 7.1.1內容類型:text / html; 字符集= UTF-8

完成了!

順便說一下,首先通過檢查發出命令php-cgi -v的版本來檢查它是否有效

如果你在bash腳本中沒有做任何事情而不是運行php,你可以使用/ usr / bin / php /path/to/your/file.php等命令從cron運行php腳本。

使用文件中的第一行創建 file.php:
file.php(#!/bin/php)
文件.sh(#./bin/bash)。
在終端中檢查安裝的 php.Run 命令:

which php

如果設置將有一個答案:

/usr/bin/php

使用以下命令運行 file.php:

php file.php

如果文件已啟動,則可以將此命令寫入 file.sh:

#!/bin/bash
run_php=`php file.php`
echo $run_php

小心'和`不同!!!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM