我有一個執行php腳本的bash腳本。我的bash知識很差,我需要執行該PHP腳本大約100次。我只是複製粘貼執行線:執行PHP腳本8次後Bash腳本停止
#!/bin/bash
php /home/me/public_html/script/stats.php 1 2 3
php /home/me/public_html/script/stats.php 1 2 3
php /home/me/public_html/script/stats.php 1 2 3
...
1,2,3是我傳遞給php腳本的參數。
所有的工作正常,但在第8行bash腳本掛起後,不會執行下一步。所以我必須重新啓動它。
什麼可能是錯的?
UPD
PHP(不完整的腳本,但總的想法)
它首先檢索命令行參數。將它們傳遞給一個在msql查詢中使用它們的函數。 msql查詢的每個結果都被傳遞給另一個函數,該函數使用該結果構建一個url,從中檢索逗號分隔的字符串,並將其分割成數組並插入另一個表中。主函數完成後,msql鏈接關閉,腳本退出。
<?php
if (($argv[1] > 0) && ($argv[2] > 0) && ($argv[3] > 0)) {
echo "All good! Here we go: ";
echo "\n";
gatherstats($argv[1],$argv[2],$argv[3]);
} else {
echo "no\n";
}
function gatherstats($y,$m,$cl){
Require 'db.php';
// SQL QUERY HERE AND A LOOP TO PROCESS RESULTS
//CALLS UP NEXT FUNCTION FOR EACH RESULT
crawl($a,$b,$c);
}
function crawl($atr,$year,$month) {
//forms up specific url from passed vars and processes it
}
mysqli_close($link);
?>
也許傳遞第四個參數,'100'腳本調用異步的,只是做一個呼叫使用' – Esailija
檢查ps -ef' PHP的how.many實例在最後還活着 –
@Esailija :) nope :) 1,2,3每行都是不同的。但其價值不會影響執行的停止。我混合了他們幾次,並取而代之 - 仍然是相同的結果。 @Cthulhu'ps -ef'在停止之後沒有活動php實例。 – GeekSince1982