「sudodpkg-l」からのデータをPythonを使用してUbuntuターミナルに保存する方法、この方法で保存しようとしましたが、機能しません
import os
f = open('/tmp/dpgk.txt','w')
f.write(os.system('sudo dpkg -l'))
「sudodpkg-l」からのデータをPythonを使用してUbuntuターミナルに保存する方法、この方法で保存しようとしましたが、機能しません
import os
f = open('/tmp/dpgk.txt','w')
f.write(os.system('sudo dpkg -l'))
subprocess.check_output()
別のプロセスの出力をキャプチャするために使用します。
import subprocess
output = subprocess.check_output(['sudo', 'dpkg', '-l'])
os.system()
別のプロセスの終了ステータスのみを返します。上記の例ではsudo
、パスワードの入力を求められないことを前提としています。
コマンドの出力をファイルに保存するには、次のコマンドを使用できますsubprocess.check_call()
。
from subprocess import STDOUT, check_call
with open("/tmp/dpkg.txt", "wb") as file:
check_call(["sudo", "dpkg", "-l"], stdout=file, stderr=STDOUT)
stderr=STDOUT
コマンドのstderrをstdoutにリダイレクトするために使用されます。