【问题标题】:Make a Mac .App run a script on running of said .App使 Mac .App 在运行所述 .App 时运行脚本
【发布时间】:2014-04-30 03:13:57
【问题描述】:

我有一个可执行的脚本(Shell,chmod-ed 到 755。Python 在脚本中,这意味着不能从外部 .py 文件运行)。当我运行它时它工作。如何制作一个在运行时执行所述脚本的 .app?我有一个简单的 .app 具有这种结构:APPNAME.App>Contents>MacOS>script 这不运行。有什么办法可以将脚本搭载到另一个应用程序上,例如 The Powder Toy?我不是 OSX 的新手,我只是没有 root 权限,无法安装 XCode。 记住,我不能从源代码安装任何东西或使用安装脚本,有效地消灭 py2app 作为一个选项。 编辑: 这个答案是由 mklement0 提供的。 Automator 可让您选择运行脚本的环境、输入脚本并将其捆绑到 .app 中,从而不再需要 shell 脚本。

【问题讨论】:

  • 同样,这需要在其他人的计算机上运行,​​只需单击鼠标即可。我知道怎么做,就像我以前做过的一样。我不能使用 Automator 或 AppleScript。我需要让脚本在 .app 启动时运行。
  • 感谢您的建议。
  • Automator 可以创建包装 shell 脚本的 *.app 文件。为什么这不是一个选项?
  • 嗯...让我检查一下。我刚才尝试使用applescript,但无济于事。
  • 谢谢,mklement0。我选择了环境 /usr/bin/python 并复制了我的脚本。完美。 :) 另外,如何将问题标记为“已回答”?

标签: python macos shell .app


【解决方案1】:
  • 运行Automator 并创建一个新的Application 项目。
  • 添加Run Shell Script 操作。
  • Shell:列表中,选择选择的解释器; /usr/bin/python 在这种情况下。
  • 将 Python 脚本的内容粘贴到操作中并保存 *.app 包。

【讨论】:

  • 谢谢。我还不能回答我自己的问题。我知道 stackoverflow 的目标是什么,但这是一个非常严格的规则集。
  • 不客气;你可以回答你自己的问题,但是虽然你的声望点少于 100,但你必须在发布问题后等待 8 小时 - 请参阅 stackoverflow.com/help/self-answer
  • “我无法回答自己的问题yet。”
  • @mckryall 知道了;我错过了这种细微差别。我以为你在谈论声誉门槛。
【解决方案2】:

如果您使用的是applescript,只需通过另存为将其保存为一个捆绑包,然后单击下拉说脚本,将其更改为我认为的捆绑包。之后,单击苹果脚本中的捆绑图标并将脚本拖到您想要的文件夹中。要运行它,请将您的运行命令放入并将您之前放置在捆绑文件夹中的脚本拖到运行命令的目录槽中。由于我不在我的 Mac 上,所以我不能给你任何确切的信息,但我正在给你我所知道的最好的。

【讨论】:

  • 不,我使用的是 shell。我打算在我自己的计算机上运行它,为那些甚至不知道终端的人服务。我需要有关手动制作 .app 的详细信息。
  • 哦,来看看这个。 mathiasbynens.be/notes/shell-script-mac-apps。它看起来很简单:)
猜你喜欢
  • 2016-03-22
  • 2015-12-18
  • 2023-04-08
  • 1970-01-01
  • 2018-09-05
  • 1970-01-01
  • 2017-03-22
  • 2021-05-20
  • 2023-03-10
相关资源
最近更新 更多