簡體   English   中英

PHP每n秒運行python腳本

[英]PHP run python script every n seconds

我有一個想每n秒運行一次的python腳本。 我希望能夠使用PHP頁面啟動腳本。 我希望它在后台運行,以便我可以訪問我的頁面,單擊“開始”,離開頁面,在幾個小時后回來,然后停止整個操作。

我正在嘗試構建一個Web界面,以便每n秒從網絡攝像頭捕獲一個屏幕截圖,以便以后可以將圖像序列編譯為定時錄像。

我正在嘗試使用的命令是:

nohup watch -n20 python imgDownload.py &

當我直接將其輸入命令行時,這通常可以工作,但是在PHP中,當我這樣做時

$cmd = 'nohup watch -n20 python imgDownload.py &';
$output = shell_exec($cmd);

要么

exec($cmd, $output);

甚至

$cmd = 'nohup watch -n20 python ' . dirname(__FILE__) . '/imgDownload.py &';

它不起作用。

我知道shell_exec()可以工作,因為我可以成功運行以下命令:

echo shell_exec("echo 'hi, there'");

它會在頁面上顯示“嗨,在那兒”,就像應該這樣。

有什么想法為什么不起作用? 有一個更好的方法嗎?

使用exec並將輸出重定向到/ dev / null,這將導致php不等待命令完成:

$cmd = 'nohup watch -n20 python imgDownload.py &';
exec($cmd . " > /dev/null &");

暫無
暫無

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

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