从Python执行mac命令

从Python执行mac命令,python,Python,我试图从Python执行MAC命令,但出现以下错误:- 命令 from subprocess import call call(["""osascript -e 'tell app "System Events" to display dialog "Hello World" ' """]) 错误 回溯(最近一次呼叫最后一次): 文件“/Users/premanandlakshmanan/Documents/psilon/quantopian/mac_popup.py”,第2行,在 调用([“

我试图从Python执行MAC命令,但出现以下错误:-

命令

from subprocess import call
call(["""osascript -e 'tell app "System Events" to display dialog "Hello World" ' """])
错误

回溯(最近一次呼叫最后一次):
文件“/Users/premanandlakshmanan/Documents/psilon/quantopian/mac_popup.py”,第2行,在
调用([“osascript-e”告诉应用程序“系统事件”以显示对话框“Hello World”“”])
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py”,第522行,在调用中
返回Popen(*popenargs,**kwargs)。等待()
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py”,第710行,在__
错误读取,错误写入)
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py”,第1335行,在_execute_child中
引发子对象异常
OSError:[Errno 2]没有这样的文件或目录
[在0.3秒内完成,退出代码为1]
,带有
shell=False
(默认值)的参数列表

尝试:

导入子流程
args=[]
args.append('osascript')
args.append('-e')
args.append('告诉应用程序“系统事件”以显示对话框“Hello World”')
子进程调用(args)
您正在尝试执行一个名为
osascript-e'tell ap…
的文件,该文件不存在

您希望执行带有一些参数的
osascript

根据
子流程。call()
获取参数列表。您需要将命令分解为各个部分

from subprocess import call

args = ['osascript',
        '-e',
        'tell app "System Events" to display dialog "Hello World"'
       ]
call(args)

您需要仔细检查sys.path,以确保它包含
/usr/bin
from subprocess import call

args = ['osascript',
        '-e',
        'tell app "System Events" to display dialog "Hello World"'
       ]
call(args)