3
我的Python腳本通過使用os.system調用一個shell命令:Python的抑制外殼輸出
os.system('sudo ifdown wlan0 &> /dev/null')
如果我沒有運行的Python此命令,輸出被抑制,在Python,但是,它仍然打印輸出。
我在做什麼錯?
我的Python腳本通過使用os.system調用一個shell命令:Python的抑制外殼輸出
os.system('sudo ifdown wlan0 &> /dev/null')
如果我沒有運行的Python此命令,輸出被抑制,在Python,但是,它仍然打印輸出。
我在做什麼錯?
當您使用os.system
時,使用的外殼是/bin/sh
。在許多操作系統上,/bin/sh
不是bash
。您正在使用的重定向&>
未由POSIX定義,並且不適用於某些shell,如dash
,這是Debian及其衍生產品上的/bin/sh
。以下應該正確地抑制輸出:
os.system('sudo ifdown wlan0 > /dev/null 2>&1')
你可以嘗試使用'subprocess'這裏描述? http://stackoverflow.com/questions/11269575/how-to-hide-output-of-subprocess-in-python-2-7 –