るりまサーチ

最速Rubyリファレンスマニュアル検索!
18件ヒット [1-18件を表示] (0.022秒)

別のキーワード

  1. env fetch
  2. _builtin env
  3. env update
  4. env delete
  5. env each

検索結果

ENV (38084.0)

環境変数を表すオブジェクト。Hash と同様のインターフェースを持ち ます。ただし、Hash と異なり、ENV のキーと値には文字列しか とることができません。

...、Hash と異なり、ENV のキーと値には文字列しか
とることができません。

ENV
で得られる文字列は ENV['PATH'] 以外は常に汚染されています。
オブジェクトの汚染に関しては spec/safelevel を参照して下さい。
ENV
['PATH'] はその要素...
...//emlist[例][ruby]{
p ENV['TERM'].tainted? # => true
p path = ENV['PATH'] # => "/usr/local/bin:/usr/bin:/bin:/usr/X11/bin"
p path.tainted? # => false
//}

また、ENV で得られる文字列は Object#freeze されています。

//emlist[例][ruby]{
p ENV['TERM'].frozen? # => tru...
...e
//}

Windows では環境変数は大文字、小文字を区別しません。(cygwin を除く)

//emlist[例][ruby]{
ENV
['OS'] # => Windows_NT
ENV
['os'] # => Windows_NT
//}...

Object#tainted? -> bool (18121.0)

...ます。

オブジェクトの汚染に関してはspec/safelevelを参照してください。

//emlist[][ruby]{
p String.new.tainted? #=> false
p ENV['OS'].tainted? #=> true
//}

このメソッドは Ruby 2.7から deprecated で、Ruby 3.2 で削除予定です。

@see Object#taint,Object#un...

Object#taint -> self (38.0)

このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。

...環境変数(ENVで得られる文字列)など一部のオブジェクトは最初から汚染されています。
オブジェクトの汚染に関してはspec/safelevelを参照してください。

//emlist[][ruby]{
$SAFE = 1

some = "puts '@&%&(#!'"
p some.tainted? #=> false
eval(some)...
...#=> @&%&(#!

some.taint
p some.tainted? #=> true
eval(some) # Insecure operation - eval (SecurityError)

some.untaint
p some.tainted? #=> false
eval(some) #=> @&%&(#!

p ENV['OS'].tainted? #=> true
//}

@see Object#tainted?,Object#untaint,Object#freeze...