:파이썬 : 인수 (변수) 만 인수로 쉘 스크립트를 실행하는 쉘 스크립트에서 읽을 수있다 내가 파이썬에서 (명령하지) 쉘 스크립트를 실행하려고
main.py
-------
from subprocess import Popen
Process=Popen(['./childdir/execute.sh',str(var1),str(var2)],shell=True)
execute.sh
----------
echo $1 //does not print anything
echo $2 //does not print anything
VAR1 및 VAR2는 일부 문자열입니다 쉘 스크립트의 입력으로 사용하고 있습니다. 나는 뭔가를 놓치고 있습니까? 아니면 그것을 할 수있는 다른 방법이 있습니까?
는 언급 된 How to use subprocess popen Python
예 ... 유용했는데 해결되었습니다. 내 문제. – creativeDrive
@ user2837135 문제가 해결 되었다면이를 수락해야합니다 (체크 표시를 클릭하십시오). 그러면 upvoting도 고려해야합니다. – SethMMorton
이 경우에는'shell = True'를 사용하지 말아야합니다.하지만 사용한다면''shlex.quote()']를 사용하여'var1','var2'를 이스케이프 처리해야합니다 (http : //docs.python. [var1, v2]에있는 v에 대해'output = check_output ("./ childdir/execute.sh"+ "".join (pipes.quote (str (v)) : org/3/library/shlex.html # shlex.quote) var2]), shell = True)' – jfs