我想運行shell的「at」命令並獲取結果狀態,我使用了以下腳本,它在計劃作業列表中添加一個條目並在一分鐘後執行它(僅舉例):如何在PHP中獲取「at」shell命令輸出?
try{
$output = shell_exec("at now + 1 minutes \n curl http://www.mysite.com/test.php?key=value");
echo $output;
}
catch (Exception $e) {
echo "Error :" . $e->getMessage();
}
該命令執行得很好(我用「atq」shell命令檢查了這個命令,並且頁面test.php的腳本也在一分鐘後按計劃執行),但變量$ output什麼也沒有返回!
我用exec,system和passthru函數代替了shell_exec,但始終沒有任何輸出。
我想讓此函數的返回值檢索添加的作業ID並保留以備後用(例如,刪除此作業)。
是的,我只是想從STDOUT捕獲數據,而當我用中繼()該命令執行得很好,但沒有發出任何數據! – Toskydao 2011-05-31 17:23:08