Popenでサブプロセスを作成しようとしています。ここに私のコードが最初にあります:Python - Popenのリストをコマンドとして使用する
hostname = 'host'
servername = 'server'
commandargs = ['/usr/sbin/mminfo',' -o n',' -s',servername,' -q "client=\'',hostname,'\',savetime>=last day"',' -r "client,name"']
process = subprocess.Popen(commandargs, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
問題は、実行されたコマンドが失敗し、連絡先のサーバーが利用できないというメッセージであることです。変数hostnameが使われていないようです... Popen(シェル= True)のコマンドとして、リストではなく文字列で同じことを試してみましたが、すべて正常に動作しています。
コードに間違いがあることを知っている人はいますか?
よろしくお願いいたします。 Stefan
のようなものは、ホスト名、不要を引用しないでください。有効なホスト名には、奇妙なものに拡張される文字もスペースも含まれません。あなたがすべきことは、コマンド内の各エンティティを別々にして、 '-o n'ではなく-o、nのようにすることです。 – synthesizerpatel
hostname = 'host' あなたは^ ?これはテストホスト名で変数を埋めるための私のテストです。 – StefanS