您好我一直在测试的红宝石一些很基本的东西,发现以下。

如果我把一个称为xxxx.rb此路径中文件 “C:\ Documents和Settings \桌面\ xxxx.rb”

puts __FILE__

和调用在命令行此红宝石文件而不前述红宝石的输出为以下

  

C:/文件和设置/桌面/ xxxx.rb

,但如果我调用与xxxx.rb文件的红宝石(红宝石xxxx.rb)在等的输出的命令如下:

  

xxxx.rb

这是为什么差值Δθ感谢

PD:我在WINDOWS XP SP3

<强> RUBY VERSION:1.8.6

有帮助吗?

解决方案

你需要的是适当扩大的路径:

# Affected by the current working directory, etc.
puts __FILE__

# Always an absolute path
puts File.expand_path(__FILE__, Dir.getwd)

这需要你的当前工作目录进去。

其他提示

我猜,当你的文件只需双击,绝对路径被传递。你应该通过调用它像达到同样的效果:

ruby C:/Documents and Settings/Desktop/xxxx.rb

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top