執行此代碼:了shell_exec的nohup用的nohup.out
shell_exec('nohup command&');
或本
shell_exec('nohup command > /path/to/nohup.out 2>&1&');
但在這兩種情況下沒有的nohup.out。如何通過php運行nohup和nohup.out?
執行此代碼:了shell_exec的nohup用的nohup.out
shell_exec('nohup command&');
或本
shell_exec('nohup command > /path/to/nohup.out 2>&1&');
但在這兩種情況下沒有的nohup.out。如何通過php運行nohup和nohup.out?
了shell_exec( 'nohup命令> /path/to/nohup.out 2> ');
此行將起作用。只要確保您有輸出文件夾的寫入權限即可。考慮你的輸出文件夾是/ usr/nohup的輸出
ls -l /usr/nohup-out
應該具有寫入,讀取和執行權限(RWX)。如果沒有,請執行以下操作:
sudo chmod -R 777 /usr/nohup-out
現在,嘗試執行php文件。它應該在/usr/nohup-out
文件夾中創建一個nohup文件。
示例腳本和結果:
1. date.php:
php date.php
3. nohup的:
<?php
shell_exec('nohup date > /usr/nohup-out/nohup.out 2>&1&');
?>
2.從終端執行PHP .out執行後的內容
週四4月23日11點30分28秒IST 2015年
>只要確保您有輸出文件夾的寫入權限 - 這是解決方案,謝謝。 –
第二個絕對應該已經創建了一個文件(不論是否'nohup'或'command'其實居然跑)。你確定它沒有創建文件? (或者你的意思是這個文件是空的?) –
你運行這個的服務器是否允許'shell_exec()'運行? – Twisty