2015-05-12 103 views
0

編寫shell腳本,因爲目前我的RVM設置要求我寫2-3線切換Ruby版本Ruby版本之間切換,和IM不斷地這樣做,因爲我寫一個Ruby應用程序,它需要2.2.1和需要紅寶石的膠乳文檔1.9.1。我目前的代碼可能看起來更像僞代碼,所以請幫助我運行它。下面的代碼:shell腳本不運行:簡單

#!/bin/sh 
/bin/bash --login 
rvm list // this is an external shell command 
echo -n Use which one? > 
read text 
rvm use $text // this is an external shell command 

回答

1

該腳本是有問題的,因爲它會運行bash作爲登錄shell,然後拒絕,直到退出它運行任何與其他線路。

你也許並不需要爲你想要做什麼shell腳本,只是有兩個別名在您的個人資料設置:

alias rlist='rvm list' 
alias ruse='rvm use' 

然後你就可以進入rlist如果你想要的清單他們或ruse 2.2.1(例如)選擇一個。


此外,作爲Walter A指出了評論,你也可以硬編碼的可能性,假設你不希望它太動態:

alias rbapp='rvm use 2.2.1' 
alias rbltx='rvm use 1.9.1' 

這有讓您的附加優勢如果需要,可以在最後做更多的事情:

alias rbltx='rvm use 1.9.1; echo Using Latex ruby' 

某些通常不可能的需要參數的別名。

+1

或者做兩個aliasses兩個版本,像appruby和latexruby。 –