如何使用shell脚本制作Mac OS X .app?


10

我尝试了几个教程,但我明白了: PowerPC错误

我怎样才能解决这个问题?我添加了一个info.plist(我只是复制并粘贴了另一个应用程序的文件,并改变了一些东西。)

此外,我曾经chmod +x myApp使脚本可执行。

PS我正在使用El Capitan


在收到错误消息之前,我们无法猜测您的操作。您遵循了哪些教程,之后哪个步骤卡住了?
nohillside

1
我创建了一个名为myApp.app的文件夹,然后是一个名为Contents的子文件夹,然后是MacOS,然后是一个myApp shell脚本,其中包含#!/bin/bash ; say "Hi" ; exit 0(使用不同行上的每个命令,并且没有分号)。
耀斑猫

1
执行位设置的bash脚本不一定需要放在要执行的包中,只需在Finder中双击它或从终端运行它即可。如果你真的想要一个应用程序包,那么使用AppleScript或Automator创建它,后者很容易。添加“运行Shell脚本”操作并将代码放入其中。
user3439894 2016年

@ user3439894我在发布此内容之前尝试使用您描述的方法中的自动化程序,但该应用程序无法在目标计算机上运行。
Flare Cat

@ user3439894好吧,出于某种原因,我无法编辑我以前的评论。该错误类似于“此计算机不支持此类应用程序”。
Flare Cat

Answers:


19

好吧,多年来我一直使用这个简单的技巧在应用程序中使用bash脚本(并且真的不明白为什么所有人都在尝试如此复杂的解决方案,如创建“Contents”文件夹,info.plist或使用Automator或Platypus等等。 。????):创建一个名为“YourApplication.app”的文件夹。将您的bash脚本文件直接放在此文件夹中,以最适合您的方式(Finder,终端等)。bash脚本当然必须是可执行的(如果需要,请使用chmod + x)。不需要其他文件夹或文件(当然,您需要在脚本中调用其他脚本或可执行文件)诀窍是将脚本命名为与应用程序文件夹完全相同但没有扩展名。在此处描述的情况下,脚本文件必须命名为“YourApplication”。就这样 !从Snow Leopard到Mavericks,它适用于Mac OS x。如果有人可以尝试更新的操作系统版本并告诉我。

注:脚本的大小必须至少为28个字节,否则将无法执行。它可以用空白线填充以达到最小尺寸。此外,剧本的第一行必须是一个shebang; 例如#!/bin/bash#!/bin/perl


尝试添加更多行,如果脚本中没有足够的行,它会为您提供消息。
皮埃尔·拉加德2017年

我已经编辑了你的答案,包括重要的缺失信息,并对其进行了投票。
3439894

好的,谢谢你的纠正和提升...我已经使用了这个太长时间了,忘了需要28个字节...我当然没有任何小脚本:D
Pierre Lagarde

1
我刚刚在macOS Sierra下进行了测试,它也在那里工作。
3439894

1
@FlareCat事实上,我刚刚检查过,我猜任何有现有翻译的shebang都会这样做(用perl试过)。如果您尝试过其他语言,请告诉;)。
皮埃尔·拉加德2017年

5

如果它是一个简单的shell脚本,那么您不需要将它包装在应用程序包中; 您可以双击脚本本身。但是,您将无法获得自定义图标或其他类似的功能。

我认为有一些帮助器可以包装简单的脚本,但我遇到的唯一一个是Platypus,它允许你使shell / python / perl / ruby​​ / etc脚本像带有图标的常规应用程序一样运行,I / O重定向等


鸭嘴兽看起来很好,但知道如何手动做它会很棒。
耀斑猫

1
测试了鸭嘴兽,正是我想要的!谢谢你的建议。
Flare Cat
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.