2012-07-15 28 views
3

Ikenna Okpala recommended this .gemrc(我修改了它略):何时/为什么要使用--env-shebang和红宝石?

 
--- 
:verbose: true 
:bulk_threshold: 1000 
install: --no-ri --no-rdoc --env-shebang 
:sources: 
- http://gems.rubyforge.org/ 
:benchmark: false 
:backtrace: false 
update: --no-ri --no-rdoc --env-shebang 
:update_sources: true 

我以前没有注意到--env-shebang。我抬头看着http://guides.rubygems.org/command-reference/--env-shebang的文档:

 
Install/Update Options: 
... 
-E, -​-[no-]env-shebang - Rewrite the shebang line on installed scripts to use /usr/bin/env 

实事求是地讲,为什么会在--env-shebang选项是重要的? (我从来没有使用它)。

回答

4

如果由于某种原因宝石的作者没有使用#!/usr/bin/env ruby您可能希望自动更改它。

(如果你问为什么你要在env家当线可言,this说明它非常好。)

的RubyGems的,开发之初的线程讨论的理念,为这个功能here

1

/usr/bin/env是一个Unix程序,它检查用户的路径以查看程序应该如何运行。使用/ usr/bin/env允许使用该程序的人能够选择他们自己的Ruby版本,而不是默认情况下在系统上安装的版本。而不是硬编码Ruby的位置,你可以让用户决定它在哪里。