有没有办法自动附加到 $: ruby 中的变量以说明其他 site_ruby 位置?
Ruby 安装在 /usr/local/ 中,使用 gem_install 会将新的 ruby 文件正确安装到 /usr/local/lib/ruby/site_ruby。
但是,有一些 RPM 用于将 ruby 绑定到我们想要安装的 shadow 等工具,它们安装到 /usr/lib/ruby/site_ruby(非本地)。有没有一种标准的方法来告诉 ruby 这个目录也应该默认包含在内?
我知道脚本可以动态更新 $: 或者可以使用 -I 调用它们,但似乎这是应该在安装中处理的事情。
有没有其他人找到解决此类问题的干净方法?
谢谢,查克
在 /etc/profile 中设置 RUBYLIB 以包含您想要的路径。
一些狡猾的示例代码:
您可以将此脚本别名到您的路径中,然后调用
虽然它本身不是很自动......
也许您可以创建一个名为 /etc/rubypaths 的文件,并让脚本从 cron 运行,稍作修改?因此,您可以执行以下操作,而不是依赖 ARGV:
但也许您想要让操作系统以某种方式“知道”文件系统上有另一个 site_ruby 文件夹,并且您希望将它添加到 $RUBYLIB。如果您没有通过 /etc 中的文件之类的文件实际告诉操作系统您的意图,不确定这是否可行。