人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Rubyを使用しています。
sudoしたら$:の中身が変わってしまいます。
何故なのか教えて下さい。

Macintosh:~ user$ ruby -e 'p $:'
["/opt/local/lib/ruby/gems/gems/sources-0.0.1/lib", "/opt/local/lib/ruby/site_ruby/1.8", "/opt/local/lib/ruby/site_ruby/1.8/i686-darwin9.1.0", "/opt/local/lib/ruby/site_ruby", "/opt/local/lib/ruby/vendor_ruby/1.8", "/opt/local/lib/ruby/vendor_ruby/1.8/i686-darwin9.1.0", "/opt/local/lib/ruby/vendor_ruby", "/opt/local/lib/ruby/1.8", "/opt/local/lib/ruby/1.8/i686-darwin9.1.0", "."]
Macintosh:~ user$ sudo ruby -e 'p $:'
["/opt/local/lib/ruby/site_ruby/1.8", "/opt/local/lib/ruby/site_ruby/1.8/i686-darwin9.1.0", "/opt/local/lib/ruby/site_ruby", "/opt/local/lib/ruby/vendor_ruby/1.8", "/opt/local/lib/ruby/vendor_ruby/1.8/i686-darwin9.1.0", "/opt/local/lib/ruby/vendor_ruby", "/opt/local/lib/ruby/1.8", "/opt/local/lib/ruby/1.8/i686-darwin9.1.0", "."]
Macintosh:~ user$ echo $RUBYLIB
/opt/local/lib/ruby/gems/gems/sources-0.0.1/lib
Macintosh:~ user$ sudo echo $RUBYLIB
/opt/local/lib/ruby/gems/gems/sources-0.0.1/lib

●質問者: akio0911
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:echo i686 LIB Macintosh Ruby
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● znz
●60ポイント

sudoでRUBYLIB環境変数が渡っていないからだと思います。

最後の「sudo echo $RUBYLIB」はechoだけsudoで実行されていて、$RUBYLIBの変数展開は元のユーザのシェルで実行されています。

「sudo env」や「sudo sh -c 'echo $RUBYLIB'」などで確認してみてください。


URLが必須のようなので似たような話のURLを書いておきます。

http://bbs.fedora.jp/read.php?FID=8&TID=6328

◎質問者からの返答

なるほど、理解できました。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ