
從使用os.system)在python命令(重定向標准輸入輸出
python 標准輸出stdout stdio os.system
通常我可以通過改變sys.stdout的值在python更改標准輸出。然而,這似乎只影響打印那么,有沒有什么辦法可以抑制方案是通過使用os.system在python運行()命令的輸出(控制台),? 謝謝
本文地址 :CodeGo.net/172881/
-------------------------------------------------------------------------------------------------------------------------
1. 你可以考慮通過在運行程序subprocess.Popen,與subprocess.PIPE通信,然后推了輸出在任何你想要的,但按原樣,os.system只是運行,別無其他。
from subprocess import Popen, PIPE
p = Popen(['command', 'and', 'args'], stdout=PIPE, stderr=PIPE, stdin=PIPE)
output = p.stdout.read()
p.stdin.write(input)
更加靈活的在我看來。你可能想看看完整的Python模塊的子過程
2. 你可以重定向標准錯誤和標准輸出到/ dev / null作為自身的一部分。
os.system(cmd + "> /dev/null 2>&1")
3. stderr重定向以及標准輸出。
4. 如果你想消除與python程序啟動控制台,您可以將其保存為。PYW擴展。 我可能誤解了問題,雖然。
本文標題 :從使用os.system)在python命令(重定向標准輸入輸出
