Eri*_*ulf 4 python macos sudo authorization
我有一个OS X Python应用程序,它使用wxPython来实现它的GUI控件.我想在启动网络服务之前提示用户提供管理权限(类似于在Objective-C中使用Authorization Service API).
我找到的最近的库是Bob Ippolito的授权库,但它已经过时,并且与Snow Leopard(OS X 10.6.4/Python 2.6.4)存在兼容性问题.
我的解决方法是创建一个Objective-C启动程序,它运行具有管理权限的python应用程序,但感觉相当笨拙.
谢谢您的帮助!
如果它只是您需要运行的shell命令,请求提升权限,那么您可以这样做:
os.system("""osascript -e 'do shell script "<commands go here>" " with administrator privileges'""")
Run Code Online (Sandbox Code Playgroud)
它将在applescript解释器中运行一个shell命令,并提示用户输入他们的帐户凭据; 使用sudo有效地运行命令.
请注意,您可以在命令中转义引号,例如
os.system("""osascript -e 'do shell script "mkdir -m 0775 -p \\"%s\\" " with administrator privileges'"""%d)
Run Code Online (Sandbox Code Playgroud)
希望有所帮助!
| 归档时间: |
|
| 查看次数: |
3117 次 |
| 最近记录: |