使ってます
subprocess.call(['prog', 'arg'], shell=False)
progを実行し、自分でargをエスケープするために私を惜しまないようにします。
現在、progはSTDINからの入力を必要とする場合があります。シェルでは私はただ使うことができます
echo 'some input' | prog arg
パイプを使用します。自分でargをエスケープせずに、サブプロセスでこれを行うにはどうすればよいですか?これも可能ですか?
またはこれを行う唯一の方法です
subprocess.call('echo "%s" | prog "%s"' % ('some input', 'arg'), shell=True)
これはまったく安全ではありません。