2011-09-14 2 views
4

터미널에서 실행중인 PHP 파일 'run.php'가 있습니다. 이 파일에는 다음 줄이 있습니다.PHP exec : 응답하지 않고 다음 줄로 계속하지 않습니다.

exec ("open-crawlers $ port 2> & 1", $ out, $ code); echo 'hello';

내가 갖고있는 문제는 'exec'명령을 실행 한 후 터미널이 멈춘다는 것입니다. 프로그램이 두 번째 줄에 도달하지 않습니다.

+0

당신이 명령 줄 자신에 그것을 실행이 발생하면? – Rijk

답변

12

이 시도 :

exec("nohup open-crawlers $port >> /tmp/log_file.log 2>&1 &"); 
echo 'hello'; 
+1

감사합니다. 당신의 대답은 내 솔루션에 영감을주었습니다.이 명령은 저에게 효과적이었습니다. exec ("open-crawlers $ port >> error.txt 2> & 1," "$ out, $ code); – Fortisimo

+0

당신은 매우 환영합니다 –

+2

다른 사람이 내가 한 문제가있는 경우를 대비하여 단지 의견. 출력을 파일과 첨부 된 "&"로 파이프해야합니다. 출력을 파이프하지 않으면 응답이 중단됩니다. 상관하지 않는다면/dev/null로 파이프하십시오. – UltimateBrent