るりまサーチ

最速Rubyリファレンスマニュアル検索!
44件ヒット [1-44件を表示] (0.445秒)
トップページ > クエリ:l[x] > クエリ:FALSE[x] > クエリ:remove_entry_secure[x]

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

ライブラリ

クラス

モジュール

キーワード

検索結果

FileUtils.#remove_entry_secure(path, force = false) -> () (21320.0)

ファイル path を削除します。path がディレクトリなら再帰的に削除します。

...再帰的に削除します。

FileUtils.#rm_r および FileUtils.#remove_entry には
TOCTTOU (time-of-check to time-of-use)脆弱性が存在します。
このメソッドはそれを防ぐために新設されました。
FileUtils.#rm_r および FileUtils.#remove_entry は以下の条件が...
...クリンクを持つ

この脆弱性を防ぐため、remove_entry_secure は削除前に path 以下の
ディレクトリのオーナーとパーミッションを変更し、上記の条件を回避します。
ただし remove_entry_secure は親ディレクトリが以下の条件を満たす...
...その場合 / や /var が全ユーザから書き込み可能であってはなりません。

この条件が満たされない場合 remove_entry_secure は安全ではありません。

@param path 削除するパス。

@param force 真のときは削除中に発生した StandardError...

FileUtils.#remove_entry(path, force = false) -> () (3213.0)

ファイル path を削除します。path がディレクトリなら再帰的に削除します。

...FileUtils.#remove_entry_secure の項を参照してください。

@param path 削除するパス。

@param force 真のときは削除中に発生した StandardError を無視します。

//emlist[][ruby]{
require 'fileutils'
FileUtils.remove_entry '/tmp/ruby.tmp.08883'
//}

@see FileUtils.#r...

Dir.mktmpdir(prefix_suffix = nil, tmpdir = nil) -> String (118.0)

一時ディレクトリを作成します。

...えられた場合は、ブロックの評価が終わると
作成された一時ディレクトリやその配下にあったファイルを
FileUtils.#remove_entry を用いて削除し、ブロックの値をかえします。
ブロックが与えられなかった場合は、作成した一時...
...}

memory_dir = nil
Dir.mktmpdir {|dir|
memory_dir = dir
File.open("#{dir}/foo", "w") { |fp|
fp.puts "hogehoge"
}
}
# ブロックを抜けたら、テンポラリディレクトリは消される。
p FileTest.directory?(memory_dir) #=> false

dir = Dir.mktmpdir...
...えない場合は、ディレクトリは存在する。
begin
File.open("#{dir}/foo", "w") { |fp|
fp.puts "hogehoge"
}
ensure
FileUtils.remove_entry_secure dir
end
p FileTest.directory?(dir) #=> false

@raise ArgumentError tmpdirが全てのユーザから書き込み可...

Dir.mktmpdir(prefix_suffix = nil, tmpdir = nil) {|dir| ... } -> object (118.0)

一時ディレクトリを作成します。

...えられた場合は、ブロックの評価が終わると
作成された一時ディレクトリやその配下にあったファイルを
FileUtils.#remove_entry を用いて削除し、ブロックの値をかえします。
ブロックが与えられなかった場合は、作成した一時...
...}

memory_dir = nil
Dir.mktmpdir {|dir|
memory_dir = dir
File.open("#{dir}/foo", "w") { |fp|
fp.puts "hogehoge"
}
}
# ブロックを抜けたら、テンポラリディレクトリは消される。
p FileTest.directory?(memory_dir) #=> false

dir = Dir.mktmpdir...
...えない場合は、ディレクトリは存在する。
begin
File.open("#{dir}/foo", "w") { |fp|
fp.puts "hogehoge"
}
ensure
FileUtils.remove_entry_secure dir
end
p FileTest.directory?(dir) #=> false

@raise ArgumentError tmpdirが全てのユーザから書き込み可...