2013-01-25 21 views
0

我寫了下面的代碼,以滿足我的一些要求:從FileUtils.remove_dir獲取錯誤()

src = "E:\\Download" 
dest = "E:\\Scripts\\original" #"E:\WIPData\Ruby\Scripts\" 

FileUtils.copy_entry(src, dest, preserve = false, dereference_root = false, remove_destination = false) 
FileUtils.remove_dir(src , force = false) 

但提示以下錯誤:4,滿分10倍。不明白爲什麼這樣的錯誤,我越來越:

錯誤

C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:1406:in `unlink': Permission denied - 
E:\\Download/BASIC USES OF THE ENGLISH TENSES.pdf.pa 
rt (Errno::EACCES) 
     from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:1406:in `block in remove_fil 
e' 
     from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:1414:in `platform_support' 
     from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:1405:in `remove_file' 
     from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:1394:in `remove' 
     from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:770:in `block in remove_entr 
y' 

回答

0

它看起來像你想刪除你的src目錄,但是你沒有文件系統權限這麼做。

+0

是的,我想刪除'下載'文件夾後,將其複製到目標文件夾。它有時,但並不總是。 – DoLoveSky

+0

我想你使用的是NTFS,所以請閱讀http://www.ntfs.com/ntfs-permissions-file-folder.htm。我真的懷疑,你只是不欠欠該目錄中的一些文件。 –

+0

我確實可以訪問該文件夾,因爲我在運行時創建了源文件夾來下載數據,並且當下載完成時,我將所有文件移動到目標文件以及要刪除的源文件。但有時會發生,有時不會。 – DoLoveSky

0

您是否雙擊腳本或從cmd/cygwin運行它?如果您通過雙擊運行腳本,可以嘗試右鍵單擊腳本並單擊「以管理員身份運行」;它可能會修復權限錯誤。