否则,在.app包中打包脚本是微不足道的. Mac OS X将很乐意运行任何标识为应用程序可执行文件的脚本.
至少,您需要遵循以下结构:
>(姓名).app
>内容
> MacOS
>(姓名)
名为(name)的文件是您的脚本(必须是可执行文件,并且必须有一个shebang行). (name)在.app目录和脚本文件中必须相同:例如,如果您的app目录名为“My Shell Script.app”,那么MacOS目录中的文件必须被称为“My Shell Script”,没有延期.
如果这样不方便,可以使用Info.plist文件指定备用可执行文件名. Info.plist进入Contents目录:
> Wrapper.app
>内容
> Info.plist
> MacOS
> MyScript
如果在属性列表中将MyScript指定为CFBundleExecutable,则此结构(名为Wrapper.app的包装中的MyScript可执行文件)可以正常工作:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleExecutable</key> <string>MyScript</string> </dict> </plist>
使用Info.plist文件可能更可取,因为这样可以重命名包装器而不会破坏它.
这是一个使用/ bin / sh作为解释器的示例脚本,但你真的可以拥有任何东西(#!/usr/bin/swift,#!/usr/bin/python等).
#!/bin/sh open -a Calculator
双击应用程序包时,脚本将运行.
您可以在Contents目录中捆绑您需要的任何其他内容.如果您觉得很花哨,可以使用Resources目录和类似的东西重现标准的可执行包布局.
原文地址:https://www.jb51.cc/bash/384119.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。