我正在创建一个包装 UNIX/Linux/OS X 命令的基本 gem,并希望确保正确加载 PATH(即,当在 passenger 下运行 ruby-on-rails 应用程序时,它有 '/usr/bin' ).这是一个简单的例子来说明我正在尝试做什么(实际的例子更复杂):
module Silly
def self.tail(path)
`tail #{path}`
end
end
我应该和/或可以将公共(public)文件夹添加到 ruby 中的 PATH 中吗?如果不是,是否可以直接引用 /usr/bin/tail
(或该目录中的任何其他二进制文件),或者它们是否位于不同系统的不同目录中?谢谢!
最佳答案
您可以使用 ENV
全局哈希访问环境变量,因此 ENV['PATH'] = ENV['PATH'] + ':/usr/bin'
例如。可以使用 /bin/sh
调用命令,因为这可能会自动设置路径。
关于ruby - 在 Ruby 中包装 UNIX/Linux/OS X 二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4523230/