私は#!/usr/bin/env ruby
を使用するスクリプトを用意していますが、Ubuntuサーバーに含まれているデフォルトのルビーの代わりにRuby Enterprise Editionを使用しました。したがって、スクリプトを実行しようとすると、スクリプトがフリークアウトします。 Ruby EEパスを/usr/bin/env
に追加するにはどうしたらいいですか?/usr/bin/envを変更するには?
答えて
#!/usr/bin/env ruby
は、コマンドラインから単にruby
を呼び出すのと同様です。したがって、同じ規則が適用されます。基本的には、環境変数$PATH
の個々のエントリが順番にチェックされ、最初に見つかったruby
が使用されます。したがって、Ruby EE用のruby
が、検索パスの順番の方が、他のruby
より早いことを確認してください。
私はRuby EEに精通していないので、ruby
という実行可能ファイルがない場合、Ruby EEの実行可能ファイルの検索パスの早い方のディレクトリにシンボリックリンクを作成してください。ルビーEEのドキュメントページで
参照セクション1.6:あなたはルビーEE binディレクトリを含めるように/ etc/environmentファイルにあなたのPATHを更新することができ、システム全体の変更については http://www.rubyenterpriseedition.com/documentation.html
。
PATH = "/ opt/ruby-enterprise-xxx/bin:/ usr/local/sbin:/ usr/local/bin:/ usr/sbin:/ usr/bin:/ sbin:/bin:/ usr/games "
システム上の1人のユーザーだけが変更を表示したい場合は、.bashrcまたは.profileを正しいパスで更新できます。
ディレクトリのリストにREEパスが最初に含まれていることを確認してください。
Ruby EEに明示的な依存関係があるので、あなたの環境ではなくスクリプトを変更することができます(意図しない結果が生じる可能性があります)。
#!/usr/bin/env ruby
は
#!/path/to/enterprise/edition/ruby
なり今ではあなたがルビーがパスに含まれているものは何でもちょうどルビーの特定のバージョンを使用してではなく、読者に明らかになりました。
スクリプトの移植性を完全に諦めている限り、これは問題ありません。場合によってはそれほど大きな問題ではないかもしれません。 – iconoclast
私はここでUbuntuで使用した溶液を投稿: http://groups.google.com/group/emm-ruby/browse_thread/thread/d0c685bbd096823a#msg_effa7d6ad42c541c
それはRubyのEnterprise Editionのマニュアルに記載されたものを超えて働いて得るために、いくつかの追加のステップがありました。
私はcronジョブが動作を停止したのと同じような問題がありました... Cronは、(そのユーザーとしてログインしたときに)ユーザーに期待するPATH設定を使わずにデフォルトでコマンドを実行しているようです。実際には、デフォルトのPATH設定(/ etc/profileや他の場所にあるもの)を使用していないようです。
私は(最初のものはcronのは、コマンドを実行すると思われる方法です)以下のコマンドを使用して問題を見つけることができた:
のsu -c 'は、printenv PATH' userXの
出力で:は/ usr/local/binにします。/ usr/binに:/ binにします。/ usr /ゲーム
のsu -l userXの-c 'は、printenv PATH'
出力:/opt/ruby-enterprise-1.8.7-2010.02/bin/:/opt/ruby-enterprise-1.8.7-2010.02/bin/:/usr/local/bin:/usr/bin:/bin:/ usr/games
最初のコマンドは、裸のシステムのデフォルト以外の方法でPATH変数に値を設定していないようです。 私の場合、必要な(REE)パスを/etc/login.defsに追加するだけで解決しました。デフォルトでは次のようになります。
/etc/login.defs:103:ENV_PATH PATH =/usr/local/bin:/ usr/bin:/ bin:/ usr/games
- 1. コントローラ変数を変更するには?
- 2. するmysql_queryはに変更
- 3. 変更するには? Java
- 4. 変更するには?/
- 5. どのようにjavascript "フォントサイズを変更する"を変更するには?
- 6. 変更フォームでファイルフィールドディレクトリを変更するには
- 7. 状態の変更でnavbarテンプレートを変更するには?
- 8. Vistaホームプレミアムのファイルの「変更日時」を変更するには?
- 9. NSCursorをグローバルに変更するには?
- 10. mysqlをmysqliに変更するには
- 11. .pyを.exeに変更するには
- 12. 手にボタンカーソルを変更するには?
- 13. フォントをMarathiに変更するには
- 14. localhostをドメインサーバに変更するには
- 15. ワードプレスショートコードをアレイに変更するには
- 16. 変更する変数は
- 17. OpenGLで色を変更するには?
- 18. will_paginateのURLを変更するには?
- 19. JSeparatorの色を変更するには?
- 20. ポート番号を変更するには
- 21. JProgressBarの色を変更するには?
- 22. gtk.gdk.Pixmapのサイズを変更するには
- 23. navigationControllerのrootViewControllerを変更するには
- 24. ghcのパスを変更するには?
- 25. XNAのアイコンを変更するには
- 26. Firefoxアイコンを変更するには?
- 27. CALayerのサイズを変更するには?
- 28. EditTextでテキストを変更するには
- 29. select2でプレースホルダを変更するには?
- 30. gijgoの 'paramNames'を変更するには?
あなたはそれを行う方法を説明できますか? – nisevi