NameError: undefined local variable or method 'v' for main:Object
NameError: undefined local variable or method 'v' for main:Object
刚刚安装并计划今天 Ruby 启动,运行 通过几行代码测试以确保一切安装正确。简单的数学和 puts 命令工作正常,但是当我尝试打印我正在使用的版本时,我收到了这个错误。
我输入的代码以及我收到的后续代码和错误消息是:
PS C:\Users\Luke> irb
irb(main):001:0> ruby -v
NameError: undefined local variable or method 'v' for main:Object
from (irb):1
from C:/Ruby200/bin/irb:12:in '<main>'
irb(main):002:0>
在我在 Whosebug 上发现的四个类似问题中,以及来自 google 的少数问题中,有相当多的 NameErrors 但没有使用 "ruby -v" 作为输入,我是还不够熟练,无法从我找到的答案中收集到任何有用的信息。
我正在使用 Windows 10 和 Ruby 版本 2.0.0-p647。
我在这里很困惑。我应该对我的路径变量做些什么吗?这通常是我检查的第一件事,但安装程序有一个 "add Ruby executables to your PATH," 的复选框,所以我认为这已经解决了。当我检查环境变量时,它没有改变,仍然是 Windows 默认值,但是如果 PATH 设置不正确,最基本的 Ruby 命令不会在终端中工作吗?
如有任何帮助,我们将不胜感激!
ruby -v
在 irb
中不起作用
您需要输入RUBY_VERSION
在交互式会话中获取 Ruby 版本信息
从 REPL 中的命令行标志获取输出
使用反引号在 irb 或 pry 等 REPL 中捕获 shell 命令的输出。例如:
`ruby -v`
#=> "ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]\n"
从 Ruby 个常量中获取数据
你想要的数据也存储在各种Ruby常量中。例如:
[RUBY_VERSION, RUBY_PATCHLEVEL, RUBY_RELEASE_DATE, RUBY_REVISION, RUBY_PLATFORM]
#=> ["2.2.3", 173, "2015-08-18", 51636, "x86_64-darwin14"]
从常量构造等效字符串
您可以将常量的值放入与解释器的 -v
标志输出相匹配的字符串中,但您必须自己构造字符串。例如:
sprintf "ruby %sp%s (%s revision %s) [%s]\n",
RUBY_VERSION, RUBY_PATCHLEVEL, RUBY_RELEASE_DATE, RUBY_REVISION, RUBY_PLATFORM
#=> "ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]\n"
刚刚安装并计划今天 Ruby 启动,运行 通过几行代码测试以确保一切安装正确。简单的数学和 puts 命令工作正常,但是当我尝试打印我正在使用的版本时,我收到了这个错误。
我输入的代码以及我收到的后续代码和错误消息是:
PS C:\Users\Luke> irb
irb(main):001:0> ruby -v
NameError: undefined local variable or method 'v' for main:Object
from (irb):1
from C:/Ruby200/bin/irb:12:in '<main>'
irb(main):002:0>
在我在 Whosebug 上发现的四个类似问题中,以及来自 google 的少数问题中,有相当多的 NameErrors 但没有使用 "ruby -v" 作为输入,我是还不够熟练,无法从我找到的答案中收集到任何有用的信息。
我正在使用 Windows 10 和 Ruby 版本 2.0.0-p647。
我在这里很困惑。我应该对我的路径变量做些什么吗?这通常是我检查的第一件事,但安装程序有一个 "add Ruby executables to your PATH," 的复选框,所以我认为这已经解决了。当我检查环境变量时,它没有改变,仍然是 Windows 默认值,但是如果 PATH 设置不正确,最基本的 Ruby 命令不会在终端中工作吗?
如有任何帮助,我们将不胜感激!
ruby -v
在 irb
您需要输入RUBY_VERSION
在交互式会话中获取 Ruby 版本信息
从 REPL 中的命令行标志获取输出
使用反引号在 irb 或 pry 等 REPL 中捕获 shell 命令的输出。例如:
`ruby -v`
#=> "ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]\n"
从 Ruby 个常量中获取数据
你想要的数据也存储在各种Ruby常量中。例如:
[RUBY_VERSION, RUBY_PATCHLEVEL, RUBY_RELEASE_DATE, RUBY_REVISION, RUBY_PLATFORM]
#=> ["2.2.3", 173, "2015-08-18", 51636, "x86_64-darwin14"]
从常量构造等效字符串
您可以将常量的值放入与解释器的 -v
标志输出相匹配的字符串中,但您必须自己构造字符串。例如:
sprintf "ruby %sp%s (%s revision %s) [%s]\n",
RUBY_VERSION, RUBY_PATCHLEVEL, RUBY_RELEASE_DATE, RUBY_REVISION, RUBY_PLATFORM
#=> "ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]\n"