2011-10-10 168 views
2

在我的Python GUI應用程序中,我必須以root身份運行一個命令來執行某個操作(具體來說,它會在系統範圍內安裝一個Python模塊)。在Linux上,我只是使用gksudo或kdesu作爲傳遞給subprocess.Popen()的命令的前綴。不幸的是,似乎沒有Mac等價物。在指向一些複雜的Objective-C代碼之前,我已經看到了這個問題,稱爲BetterAuthorizationSample ...我並不真正瞭解它,並且寧願不編寫Objective-C代碼來完成這個簡單的任務。如果有更簡單的方法,我想知道。我想我可以創建我自己的密碼對話框,並將它傳遞給stdin上的常規命令行sudo。如何在Mac OS X中以root身份運行命令?

+0

N.B. 'sudo'可能不會簡單地使用stdin。閱讀一下:http://www.noah.org/wiki/Pexpect#Q:_Why_not_just_use_a_pipe_.28popen.28.29.29.3F –

回答

0

我還沒有找到最佳的解決方案,但我只是張貼了我目前的工作液here

它使用osascript具有root權限重新啓動本身。

相關問題