让Mac .App在运行时执行脚本
我有一个脚本(是Shell脚本,权限设置为755,里面有Python代码,也就是说不是从外部的.py文件运行),这个脚本是可以执行的,运行的时候也没问题。现在我想知道怎么才能做一个.app文件,让它在运行时执行这个脚本。我有一个简单的.app,它的结构是:APPNAME.App>Contents>MacOS>script
,但是这样并不能运行。有没有办法把一个脚本嵌入到另一个应用程序里,比如The Powder Toy?我对OSX不陌生,只是没有管理员权限,不能安装XCode。
记住,我不能从源代码安装任何东西,也不能使用安装脚本,这样就不能用py2app了。
补充说明:这个答案来自mklement0。Automator可以让你选择运行脚本的环境,输入脚本,然后把它打包成一个.app,这样就不需要单独的shell脚本了。
2 个回答
0
如果你在用AppleScript,只需选择“另存为”,然后在下拉菜单中找到“脚本”,把它改成“包”。之后,点击AppleScript中的包图标,把你的脚本拖到你想要的文件夹里。要运行它的话,把你的运行命令放进去,然后把之前放在包文件夹里的脚本拖到运行命令的目录位置。我不能给你确切的步骤,因为我现在不在我的Mac上,但这是我所知道的最好方法。
1
- 打开
Automator
,创建一个新的Application
项目。 - 添加一个
Run Shell Script
动作。 - 在
Shell:
列表中,选择你想用的解释器;在这个例子中选择/usr/bin/python
。 - 把你的 Python 脚本的内容粘贴到这个动作里,然后保存为
*.app
文件。