【问题标题】:Using subprocess.call - if exist an error save the error into a file使用 subprocess.call - 如果存在错误,则将错误保存到文件中
【发布时间】:2011-12-14 00:35:30
【问题描述】:

我正在尝试将所有错误保存在一个文件中,但我找不到解决方案。我是python的新手,请耐心等待:D

在“for”中,我有这一行,工作正常,但无法记录错误。

knull = open(os.devnull, 'w')
kerror = open('/tmp/error.log','wb')

proc = subprocess.call(['7z','a', file-Zip, files],stdout = knull, stderr = kerror.write())
kerror.close()
knull.close()

我是否需要在 kerror.write(HERE) 中添加一些内容,但我不知道是什么。或者我可能是在错误的方向上这样做。

谢谢!!!

【问题讨论】:

    标签: python stderr subprocess


    【解决方案1】:

    首先,您应该使用“a+”模式将新消息附加到现有文件,使用“w”将覆盖它。

    其次,错误消息是文本消息,因此您不应使用“b”模式(表示二进制)。

    仅供参考,您可能想要使用方便的logging 模块,它是处理与日志相关的任务的最佳选择:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-15
      • 2014-03-10
      • 2011-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-07
      相关资源
      最近更新 更多