我已经在Mac上设置了我需要的所有内容(Ruby,Rails,Homebrew,Git等),甚至编写了一个小程序。现在,如何在终端中执行它?我用Redcar编写了程序并将其另存为.rb,但我不知道如何通过Terminal执行它。我想运行该程序,看看它是否真的有效。我该怎么做呢?
我已经在Mac上设置了我需要的所有内容(Ruby,Rails,Homebrew,Git等),甚至编写了一个小程序。现在,如何在终端中执行它?我用Redcar编写了程序并将其另存为.rb,但我不知道如何通过Terminal执行它。我想运行该程序,看看它是否真的有效。我该怎么做呢?
Answers:
只需致电: ruby your_program.rb
要么
#!/usr/bin/env ruby
,chmod +x your_program.rb
./your_program.rb some_param
ruby your_program.rb
,您应该用程序的名称替换“ your_program.rb”。在这种情况下,根据您的错误消息,可能是ruby testapp.rb
。尽管@Robin是正确的,因为您需要与Ruby文件位于同一目录中。
cd
访问他的桌面目录,因此必须如此。
假设ruby解释器在您的PATH中(应该是),您只需运行
ruby your_file.rb
cd
是更改当前目录的终端命令。例如,要转到HOME_DIR中的“桌面”目录,您必须这样做cd ~/Desktop
。
要调用ruby文件,请使用: ruby your_program.rb
要将红宝石文件作为脚本执行:
用以下命令启动程序 #!/usr/bin/env ruby
使用运行该脚本 ./your_program.rb param
尽管现在回答这个问题为时已晚,但是对于那些来这里像我一样看到相同问题的解决方案并且在此页面上没有得到满意答案的家伙,原因仍然是,您没有文件以.rb扩展名的形式。您很可能在简单文本模式下拥有它。让我详细说明。将整个解决方案绑定到页面上,到这里开始(假设文件名是abc.rb或至少创建了abc):
在终端窗口中输入:
cd ~/to/the/program/location
ruby abc.rb
你完成了
如果发生以下错误
ruby: No such file or directory -- abc.rb (LoadError)
然后转到您拥有abc文件的目录,将其重命名为abc.rb。关闭gedit并重新打开文件abc.rb。应用相同的命令集并成功!
对于那些无法获得较旧答案的解决方案的人,我只是将文件名放在代码的第一行。
像这样
#ruby_file_name_here.rb
puts "hello world"
万一有人试图在RAILS环境中运行脚本,Rails提供了运行程序,可以通过以下方式在Rails上下文中执行脚本:
rails runner my_script.rb
此处有更多详细信息:https : //guides.rubyonrails.org/command_line.html#rails-runner