저는 매우 간단한 문제가 있습니다. 파이썬 스크립트는 다음과 같이 시작 :Python sys.stdout이 init.d 스크립트에서 작동하지 않습니다.
import sys
sys.stdout = open("server.out", 'w')
내가 터미널
python start_server.py &
그것은 server.out
파일을 작성에 직접 명령을 입력합니다. 내가 service tdserver start
를 입력하면, 모든 init.d
스크립트는 이것이다 않습니다 : 다른
python start_server.py &
같은 명령, 아무것도. 그러나이 경우 stdout은 쓰여지지 않습니다. server.out
왜? 어떤 프로세스가 파일의 잠금이없는, 스크립트가 기본적으로 ps -aux
전체 경로를 파일 이름으로 사용해보십시오 (예 : open ("/ tmp/server.out", "w") 그리고/tmp에 파일이 있는지 확인하십시오 – Yaron
내 문제가 해결되었습니다. 기본 exec 디렉토리가 무엇인지 궁금하네요. 동의 할 수 있도록 답변을 추가하십시오. –