【发布时间】:2011-08-01 14:24:14
【问题描述】:
我正在运行这个:
os.system("/etc/init.d/apache2 restart")
它应该重新启动网络服务器,就像我直接从终端运行命令一样,它会输出:
* Restarting web server apache2 ...
waiting [ OK ]
但是,我不希望它在我的应用程序中实际输出。我怎样才能禁用它? 谢谢!
【问题讨论】:
-
os.system("/etc/init.d/apache2 restart >/dev/null")将丢弃该输出。正如 Noufal 所说,subprocess是首选。但是,如果您想快速调整现有代码,重定向到 /dev/null 可能是一个有吸引力的选择。 -
@kirk:为什么是评论而不是答案?
-
@mb14:我认为它不像使用 subprocess 的建议那样“正确”。我认为这更像是一个旁注,比如“虽然我并不完全建议你这样做,但这是另一个想法。”
-
这对我有用,因为我正在寻找适用于 python 2 和 3 的东西。
标签: python subprocess os.system