我正在尝试获取传递给ruby解释器的脚本的引用.例如,如果我正在运行,ruby foo.rb我想获得对该foo.rb文件的引用.
我认为在Python中可以通过它访问sys.argv[0].可以调用,__FILE__但这不是我正在寻找的解决方案,因为__FILE__产生了当前执行代码所在的文件.
有没有办法做到这一点?
pea*_*kxu 42
使用File类中的方法来操作FILE
在test.rb里面,我有
puts __FILE__
puts File.dirname(__FILE__)
puts File.basename(__FILE__)
Run Code Online (Sandbox Code Playgroud)
当你跑步时
ruby a/b/test.rb
Run Code Online (Sandbox Code Playgroud)
你得到
a/b/test.rb
a/b
test.rb
Run Code Online (Sandbox Code Playgroud)
让我$0为读者添加一个官方链接。它是 Ruby 本身提供的全局变量之一。
http://ruby-doc.org/core-2.0.0/doc/globals_rdoc.html
包含正在执行的脚本的名称。可以转让。
| 归档时间: |
|
| 查看次数: |
13555 次 |
| 最近记录: |