0
我需要在特定時間運行一次PHP腳本。我被這樣做:如何使用at命令在特定時間運行PHP腳本?
shell_exec('echo /usr/local/bin/php /home/xxx/public_html/yyy.php param1 | /usr/bin/at now + 1 minutes');
yyy.php從$_SERVER['argv'][1]
需要參數1和不基於價值的東西。我測試了yyy.php並且腳本正常工作。我遇到的問題是我似乎無法獲得at
命令來正確執行PHP腳本。我嘗試了不同的變體,例如:
shell_exec('/usr/local/bin/php /home/xxx/public_html/yyy.php param1 | /usr/bin/at now + 1 minutes');
shell_exec('echo "/usr/local/bin/php /home/xxx/public_html/yyy.php param1" | /usr/bin/at now + 1 minutes');
沒有用。我已經加倍檢查並確保at
命令通過在終端中調用atq
排隊 - 該作業顯示出來。我認爲問題在於我如何設置at
命令。有任何想法嗎?謝謝!
試圖在命令行中運行這個? – 2015-07-10 04:08:16
@Dagon是的我有 - at命令正在排隊(我用atq進行了檢查),但是PHP腳本不像它應該執行 – user4951834
@Dagon如果我執行cd/home/xxx && echo「/ usr/local/bin/php /home/xxx/public_html/yyy.php param1「|/usr/bin/at now + 1 minutes' then then works from command line。但是,我試過shell_exec('cd/home/xxx && echo'/ usr/local/bin/php /home/xxx/public_html/yyy.php param1「|/usr/bin/at now + 1 minutes'); '而且它仍然不起作用。 – user4951834