From: shibata.hiroshi@... Date: 2014-08-12T04:36:41+00:00 Subject: [ruby-dev:48470] [ruby-trunk - Bug #6756] [Closed] FileUtils.rm_rf がアクセス権のない空ディレクトリを削除しない Issue #6756 has been updated by Hiroshi SHIBATA. Status changed from Open to Closed % Done changed from 0 to 100 Applied in changeset r47150. ---------- * lib/fileutils.rb: enable to remove with non-owner directory. [ruby-dev:45976] [Bug #6756] * test/fileutils/test_fileutils.rb: add testcase for #6756. ---------------------------------------- Bug #6756: FileUtils.rm_rf がアクセス権のない空ディレクトリを削除しない https://bugs.ruby-lang.org/issues/6756#change-48312 * Author: Fumiyasu SATOH * Status: Closed * Priority: Normal * Assignee: Nobuyoshi Nakada * Category: lib * Target version: current: 2.2.0 * ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] * Backport: ---------------------------------------- =begin UNIX の rm コマンドは、(({rm -rf dir})) でアクセス権がない空ディレクトリを 削除しますが、(({FileUtils.rm_rf("dir")})) は削除してくれません。 $ mkdir -m 0 empty-noperm-dir $ sudo ls -la empty-noperm-dir 合計 8 d--------- 2 fumiyas fumiyas 4096 7月 20 01:10 . drwxrwxr-x 11 fumiyas fumiyas 4096 7月 20 01:10 .. $ ruby -v -rfileutils -e 'FileUtils.rm_rf("empty-noperm-dir")' ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] $ sudo ls -la empty-noperm-dir 合計 8 d--------- 2 fumiyas fumiyas 4096 7月 20 01:10 . drwxrwxr-x 11 fumiyas fumiyas 4096 7月 20 01:10 .. $ rm -rf empty-noperm-dir $ sudo ls -la empty-noperm-dir ls: empty-noperm-dir にアクセスできません: そのようなファイルやディレクトリはありません この例では指定したディレクトリがアクセス権がない空ディレクトリですが、 サブディレクトリの場合も同じ問題が発生します。 Windows ならしょうがない(私の知る限りアクセス権のないファイルは 削除不可なので)と思うのですが、少なくとも UNIX 系の OS では rm -rf と 同じく削除して欲しいです。 =end -- https://bugs.ruby-lang.org/