Ruby环境变量

时间:2010-08-09 15:01:03

标签: ruby

我遇到了Ruby和环境变量的奇怪问题。

我目前在运行Windows Server 2008 R2的x64计算机上

如果我在ruby中执行以下操作: puts ENV['PROCESSOR_ARCHITECTURE']

我希望看到AMD64,但Ruby正在显示x86

如果我这样做:echo %PROCESSOR_ARCHITECTURE%,在命令提示符下,我会看到AMD64

我的Ruby版本是: ruby 1.8.6(2010-02-04 patchlevel 398)[i386-mingw32]

据我所知,ENV['PROCESSOR_ARCHITECTURE']应该只读取我的环境变量......

有什么想法吗?

干杯, 加雷

1 个答案:

答案 0 :(得分:11)

它会读取您的环境变量,但由于您的ruby可执行文件是针对32位编译的,因此它在32位环境中运行,其中PROCESSOR_ARCHITECTURE的值确实是“x86”。

如果你将system "echo %PROCESSOR_ARCHITECTURE%"放在ruby脚本中,你会发现它也会输出“x86”。