>백엔드 개발 >PHP 문제 >응답을 기다리지 않고 PHP에서 쉘을 실행하는 방법

응답을 기다리지 않고 PHP에서 쉘을 실행하는 방법

藏色散人
藏色散人원래의
2021-07-01 09:37:582627검색

PHP에서 응답을 기다리지 않고 쉘을 실행하는 방법: 먼저 해당 배경을 연 다음 "system("nohup ./test.py $s &");"를 통해 구현합니다.

응답을 기다리지 않고 PHP에서 쉘을 실행하는 방법

이 기사의 운영 환경: windows7 시스템, PHP7.1 버전, DELL G3 컴퓨터

응답을 기다리지 않고 쉘을 실행하는 방법은 무엇입니까?

결과를 기다리지 않고 백그라운드에서 명령을 실행하기 위해 시스템을 사용하는 방법

system("nohup ./test.py $s &");

이것은 백그라운드에서 실행되지 않으며 PHP는 test.py가 끝날 때까지 정지됩니다.

system("nohup ./test.py $s >>log.txt &");

이와 ​​같이 작성하면 백그라운드에서 실행될 수 있습니다. 시스템 기능이 프로그램을 시작하고 백그라운드에서 계속 실행되기를 원하기 때문에

프로그램의 출력이 파일이나 다른 출력 스트림으로 리디렉션되는지 확인해야 합니다. 프로그램이 끝나기 전에 PHP가 실행됩니다.

예:

1.system(“nohup ./test.py $s >>/tmp/output.txt &”);

2.system(“nohup ./test.py $s > ; /dev/null 2>&1 &”);

(2>&1은 표준 출력에 대한 오류 출력입니다. 오류 출력을 읽으려면 2>&1을 추가하세요. 추가하지 않으면 오류를 읽을 수 없습니다)

또는 시스템(“nohup ./test.py $s > /dev/null &”);

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 응답을 기다리지 않고 PHP에서 쉘을 실행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.