私は、Linuxの端末から正常に動作しますpython
スクリプトを持っています。私は私が私のpython
スクリプトを実行するときshell script
を使用してファイルへの端子の出力を収集することができています。スクリプトのターミナルログをファイルに取り込む方法は?
今私はpython script
自体からの端子の出力を収集したいです。しかし、そうすることはできません。
class Tee(object):
def __init__(self, f1, f2):
self.f1, self.f2 = f1, f2
def write(self, msg):
self.f1.write(msg)
self.f2.write(msg)
outfile = open('outfile', 'w')
sys.stdout = outfile
sys.stderr = Tee(sys.stderr, outfile)
コードのこの部分python file
に:私は、私は私のpython file
で以下のように行われている任意のshell
またはunix
スクリプト
を使用していないpython
を使用してこれを実行したい
出力ファイルに
stderr
とstdout
の両方を出力します。どのように私は、単一のファイルに端末全体の出力をキャプチャすることができます。
あなたは「端末全体をキャプチャするとはどういう意味ですか出力"? 上記のコードは、すべてを 'outfile'に書き出しています。 '容易になるだろう|' contextlib.redirect_(標準エラー出力標準出力)を使用しているが 。 – YSelf
@yself私のコードは 'print'文だけをファイルに出力しますが、' terminal'に表示されるすべてのログも同様にインクルードしたい –