Python でコマンド ラインを実行するのに問題があります。私は現在使用しています
os.system("cd " + path)
os.system(command)
ただし、os.system は毎回新しいコンソールを開きます。
動作させるにはどのクラスを使用すればよいですか? 出力を傍受するにはどうすればよいですか?
ありがとう !
Python でコマンド ラインを実行するのに問題があります。私は現在使用しています
os.system("cd " + path)
os.system(command)
ただし、os.system は毎回新しいコンソールを開きます。
動作させるにはどのクラスを使用すればよいですか? 出力を傍受するにはどうすればよいですか?
ありがとう !
from subprocess import call
call(["ls", "-l"])
subprocess
vsの利点system
は、柔軟性が高いことです。stdout、stderr、「実際の」ステータス コード、より優れたエラー処理などを取得できます。
また、Python ドキュメントも参照してください。
上記を修正するには:
os.chdir(path)
os.system(command)
データをキャプチャするには、サブプロセスを調べます: http://docs.python.org/2/library/subprocess.html
あなたはpython 1.7を使用しているので:
output=os.popen(command,"r").readlines()
私はいつも os.chdir("dirname")
この関数を使用します。この関数は cd 関数と同じように機能するため os.chdir("dir_thats_right_here")
、 os.chdir("/dir/thats/far/away")