【发布时间】:2012-10-26 07:20:47
【问题描述】:
我正在编写一个小脚本,它使用 scapy 收集一些信息,然后返回一些 xml 代码,我将传递给 metasploit 的 xmlrpc 接口。我希望我的脚本只返回 xml,没有其他警告等。
我可以通过在我的 sr1 命令中添加选项 verbose=0 来抑制大多数 scapy 输出。在每次输出之前我仍然得到的,我假设它在我加载模块时返回这个警告,是:
警告:没有找到 IPv6 目的地的路由 ::(没有默认路由?)
我可以通过这样调用我的脚本轻松地重定向该输出:
./myscript 2> /dev/null
但我想将其合并到脚本中。为此,我找到了一个提示,可以有一个 NullDevice 类,它不写任何东西,然后将 sys.stderr 设置为该 NullDevice 类的实例化。
不幸的是,这仅在我已经加载模块后才有效,所以我仍然有警告,它只会将以下任何消息重定向到 stderr。
如何禁止该警告消息出现在我的屏幕上?
【问题讨论】:
标签: python hide stderr scapy output