UNIXコマンドの実行

例えば,lsを実行したいとする.簡単な方法はos.system.

import os
os.system('ls')

ただし推奨された方法ではないらしい.
subprocessモジュールで状況に応じて諸々できるらしい.

import subprocess
res = subprocess.call('ls')
out = subprocess.check_output('ls')

callメソッドは単に実行し,返す値は正常終了か異常終了かだけ. check_outputは標準出力結果を返す(bytesクラス).

out = bytes.decode(subprocess.check_output('ls'))

などの処理で文字列に変換が可能で,Pythonの中で使用できる.


Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2018-02-06 (Tue) 07:32:54 (2263d)