PHP: ottenere PID di un processo specifico
Domanda
Ho una scatola QNAP, che gestisce un sapore di Linux e sto avendo problemi per ottenere il PID di un processo utilizzando uno script php. Quello che ho finora:
$command = "PATH=$PATH:/share/MD0_DATA/.qpkg/Optware/bin: nohup /opt/bin/plowdown -o /share/MD0_DATA/Qdownload/plowshare http://www.megaupload.com/?d=m7duotr1 2> /share/MD0_DATA/Qdownload/plowshare/outputeeds.txt > /dev/null &";
exec($command, $out);
$result = $out[0];
echo $result;
Se faccio funzionare l'ordine attraverso PUTTY, ottengo:
[~] # nohup /opt/bin/plowdown -o /share/MD0_DATA/Qdownload/plowshare http://www.megaupload.com/?d=m7duotr1 2> /share/MD0_DATA/Qdownload/plowshare/outputteeds.txt > /dev/null &
22526
Che cosa sto facendo di sbagliato?
Grazie,
Cristian.
Soluzione
La shell non stampa normalmente il PID di un processo si avvia in fondo, se non è interattivo. In caso contrario, si potrebbe ottenere tonnellate di uscita durante l'avvio proprio da PID di tutti i processi che iniziare.
Quindi è necessario per rendere il guscio stampare il PID. Fare
exec("(PATH=$PATH:/share/MD0_DATA/.qpkg/Optware/bin: " .
"nohup /opt/bin/plowdown -o /share/MD0_DATA/Qdownload/plowshare " .
"http://www.megaupload.com/?d=m7duotr1 2> " .
"/share/MD0_DATA/Qdownload/plowshare/outputeeds.txt > /dev/null &);" .
"echo $$;", $out);
Altri suggerimenti
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow