我需要一个Python脚本来了解我的Mac的启动驱动器名称。这确实有效:
ascript = 'tell application "System Events" to get (name of startup disk)'
cmd = "osascript -e '{}'".format(ascript)
startup_vol = subprocess.check_output(cmd, shell=True).splitlines()[0]
但严重的是,Python调用调用AppleScript的osascript
子进程调用?我想我可以在那里挤压任何其他语言吗?
是否有本地Python方法可以做到这一点?
答案 0 :(得分:1)
为什么不使用pyobjc
?无论如何它应该默认安装。
from Foundation import NSFileManager
print(NSFileManager.defaultManager().displayNameAtPath_('/'))
结果:
$ python -c "from Foundation import NSFileManager; print(NSFileManager.defaultManager().displayNameAtPath_('/'))"
Macintosh HD
只是为了完整起见 - 你也可以使用python绑定到Carbon API,虽然it is deprecated and not recommended to use和API整体上非常笨拙:
$ python -c "import Carbon.File; print(Carbon.File.FSRef('/').FSGetCatalogInfo(0)[1])"
Macintosh HD