【发布时间】:2016-06-03 21:53:35
【问题描述】:
我正在尝试在日志文件中记录用户的终端会话;相当简单,我为ghci(交互式 Haskell)制作了一个 Python 包装器,如下所示:
#!/usr/bin/env python
import os
cmd = 'ghci 2>&1 | tee hs.log'
os.system(cmd)
但是,这仅捕获打印返回给用户的内容,而不是提示/用户输入的内容。因此,如果会话如下所示:
$ ghci 2>$1 | tee hs.log
GHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for help
Prelude> 1+2
3
Prelude> 3+4
7
Prelude>
hs.log 只有:
$ cat hs.log
GHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for help
3
7
如何在交互式终端会话期间同时捕获输出和输入?
【问题讨论】:
标签: python unix haskell pipe tee