【发布时间】:2012-12-23 22:46:03
【问题描述】:
我在 Ruby 中构建了一个名为 Vanilla 的 LaTeX 预处理器。它提供了一个名为vanilla 的命令行工具,它使用Optparse 来解析一些命令行选项。我使用OCRA gem 将其编译为exe,这仅在Windows 上有用。我想为 Mac 和可能的 Linux 做同样的事情。我知道 Mac 计算机附带 Ruby,您可以致电 ruby vanilla.rb some options 来实现我想要的。但我正在寻找一种本地方式,以便我可以在终端中执行vanilla some options。任何人都可以帮我找到任何关于实现这一目标的好教程吗?
【问题讨论】:
-
#!/bin/sh ruby path/to/your/script.rb "$@" 或者你可以使用#!env ruby - 就像这里的github.com/iron-io/iron_worker_ruby_ng/blob/master/bin/…
-
我在我的 .rb 文件上添加了您的建议。但是当我尝试“vanilla.rb some option”时,我收到两条错误消息。 1. require:command not found 和 2. syntax error unexpected token `('。但是当我 cd 进入该目录并使用 ruby vanilla.rb 一些选项运行 .rb 文件时,它工作得非常好。你知道这里有什么问题吗?
-
如果你想采用第二种方法 - 你需要使用 #!/usr/bin/env ruby - shebang 字符串告诉如何运行你的应用程序。
-
我确实明白这一点。但我忘了从文件中删除 .rb 扩展名。这就是它抱怨的原因。但是我遇到了另一个错误。这次我在运行“vanilla some option”时收到“permission denied”错误。你怎么看这个?
-
我成功了!感谢您的洞察力。