我遇到了一些路径问题,并尝试了解如何读取和匹配路径。这就是我在做的事情:
$PATH
bash: /home/agenadinik/.rvm/gems/ruby-1.9.2-p180/bin:/home/agenadinik/.rvm/gems/ruby-1.9.2-p180@global/bin:/home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin:/home/agenadinik/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games: No such file or directory
然后我试着看看我的红宝石环境中有什么:
$gem environment
/home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4:
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.2
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
- INSTALLATION DIRECTORY: /home/agenadinik/.rvm/gems/ruby-1.9.2-p180
- RUBY EXECUTABLE: /home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /home/agenadinik/.rvm/gems/ruby-1.9.2-p180/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /home/agenadinik/.rvm/gems/ruby-1.9.2-p180
- /home/agenadinik/.rvm/gems/ruby-1.9.2-p180@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
我不明白在我的红宝石环境和$ PATH
中我的哪条路径需要匹配另外,我的$ PATH几乎是我/home/username/.bashrc文件中设置的内容吗? 通常我需要指向的Ruby可执行文件的路径是什么?
另外,做哪个ruby会返回:
$ which ruby
/home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
谢谢!
答案 0 :(得分:3)
您正在使用RVM。你有很多可用的Ruby路径。当您在bashrc
中获取RVM脚本时,它将修改您的路径。每当你rvm use XXX
它将修改你的路径以反映新版本的Ruby并更新所有的bin以匹配该版本。如果你想为Ruby脚本做一个合适的shebang,你应该使用env
。
#!/usr/bin/env ruby
这将在您的路径中找到当前的ruby
可执行文件。