Windowsで実行すると、次のPythonプログラムが上記の出力(出力変数の内容)を生成します。
import commands
cmd = "dir"
(output) = commands.getoutput(cmd)
print output
とても面白くてイライラします。誰かが私に説明を教えてもらえますか?
Windowsで実行すると、次のPythonプログラムが上記の出力(出力変数の内容)を生成します。
import commands
cmd = "dir"
(output) = commands.getoutput(cmd)
print output
とても面白くてイライラします。誰かが私に説明を教えてもらえますか?
ドキュメントを参照してください:
cmdは実際には{cmd;として実行されます。} 2>&1
そこ{
から来ています。subprocess
代わりに使用する必要があります。
import subprocess
p = subprocess.Popen(['dir'],stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
stdout,stderr = p.communicate()
shell=True
dirは内部DOSコマンドであるため、この特定のケースではが必要です。通常、実行可能ファイルへのフルパスを指定し、シェルを無効にしておく必要があります。