如何将Ruby脚本作为可执行文件执行?

den*_*niz 5 ruby executable compilation

我想将我的ruby脚本作为可执行文件执行,我也应该在/ usr/bin /目录下执行.我知道有可能这样.

#!/usr/bin/ruby
puts "hello"
Run Code Online (Sandbox Code Playgroud)

和

chmod +x hello
Run Code Online (Sandbox Code Playgroud)

但我也想要一些ruby文件.

例如,如果我添加

require './other_ruby_script' 
Run Code Online (Sandbox Code Playgroud)

进入我的代码并将Ruby可执行文件移动到/ usr/bin /,它给出了以下错误:

无法加载此类文件'other_ruby_script'

我想在/ usr/bin目录下执行Ruby文件.

也许我应该编译它?但我无法编译,因为我不明白谷歌搜索"如何编译?".

如何创建可执行的ruby代码作为我的代码的合适格式.(要求'./other_file').而且我不必像这样执行./hello我的可执行文件.我应该以hello身份执行

Kum*_*rsh 1

您可以从执行 ruby​​ 文件的位置编写 shell 脚本。您需要在 shell 脚本中导出 PATH 和 GEM_HOME。shell 脚本将如下所示:

#!/bin/bash
export PATH = /usr/local/rvm/gems/ruby-1.9.3-p194
export GEM_HOME = /usr/local/rvm/gems/ruby-1.9.3-p194
cd /path/to/ruby_script
ruby file_name.rb
Run Code Online (Sandbox Code Playgroud)

您将通过以下命令获取 PATH 和 GEM_HOME:

echo $PATH
echo $GEM_HOME 
Run Code Online (Sandbox Code Playgroud)