2012-07-02 2 views
1

subprocess.call 메서드를 사용하여 web2py의 컨트롤러 함수에서 파이썬 스크립트를 실행하려고합니다. 그러나 스크립트는 거기에서 실행되지 않지만 파이썬 셸 내부에서 동일한 메소드를 실행할 때 문제없이 실행됩니다.web2py에서 서브 프로세스 사용

내가 web2py 컨트롤러의 기능에 쓴 명령은 다음과 같습니다 인수 내가 스크립트 내가 파이썬 쉘에서 작성한 명령에 전달할 명령 줄 인수를 포함하는 문자열입니다

subprocess.call(['python','script.py', args]) 

은 다음과 같습니다

>>>subprocess.call(['python','script.py','args']) 

여기 제가 직접 인수를 전달합니다.

script.py는 디렉토리에 여러 개의 파일을 생성하지만 web2py에서는 그렇게하지 않습니다.

나는 web2py 컨트롤러 기능 내에서 아무런 문제없이 서브 프로세스를 여러 번 사용했고 script.py의 사용 권한을 777로 변경하려고했지만 어느 도움도 필요하지 않았습니다.

내 실수는 어디에서 알 수 있습니까?

답변

1

아마 script.py에 대한 전체 경로를 제공해야합니까?

+1

또한,''sys.executable''을 사용하여 파이썬 인터프리터의 전체 경로를 얻습니다. – codeape

+0

전체 경로도 제공하려고했지만 도움이되지 않습니다. :( – adityaarun1

+0

'python'을 'echo'로 바꾸면 어떻게됩니까? – bos