使用python sh模块时,该模块本身会有输出,例如它正在运行的命令状态等。是否可以抑制这种情况?我不是指正在执行的命令的输出,而是模块在执行时显示的内容。
例如,如果脚本包含:
import pip
pip.main(['install', "sh"])
import sh
cmdArgs = ["-lrt","/tmp"]
sh.ls(cmdArgs)
运行脚本时,将输出以下内容:
<Command '/bin/ls -lrt /tmp'>: starting process
<Command '/bin/ls -lrt /tmp', pid 22235>: process started
<Command '/bin/ls -lrt /tmp', pid 22235>: process completed
我希望没有输出。我在http://amoffat.github.io/sh/
中找不到任何内容答案 0 :(得分:3)
从https://github.com/amoffat/sh/blob/master/sh.py#L754中可以看到(通过在源中搜索<Command
,然后查看对生成该字符串的函数的引用来找到>),这些是{级别为logging
的{1}}条消息,因此,如果您使用的是INFO
,则会显示这些消息。
因此,可以使用How do I disable log messages from the Requests library?中的标准logging
机制将它们静音:
logging