您当前的位置: 首页 >  ruby

ruby调用平台指令删除指定文件夹

发布时间:2010-04-25 12:57:00 ,浏览量:0

正常情况下,ruby如果发现文件夹中有system,readonly,hide类型的文件,则是不能直接删除

他们的。如何解决呢? 以其人之道还治其人之身!

def dryf(fpath) #destroy file x = Iconv.iconv('utf-8','gbk',fpath).to_s %x{attrib -R -S -H /"#{Iconv.iconv('gbk','utf-8',x).to_s}/"} f = File.new(fpath,"w");f.puts("trust me!no xlie!!!"*1000);f.close #p x p "destroy File : " + x + " successed!!!" if 1==File.delete(fpath) #p "destroy File : " + fpath + " successed!!!";FileUtils.remove_file(fpath,true) end def del4nx(path) #del file for No Xlie!!!!!! (p "err path!";return) unless File.exist?(path) if File.directory?(path) Dir.entries(path).each do |x| unless x =~ /^(/.)+/ fn = path+"//"+x if File.directory?(fn) :del4nx(fn) else dryf(fn) end end end (p "del Dir : [" + path + "]";Dir.delete(path)) if Dir[path+"//*"].empty? #(p "del Dir : [" + path + "]";FileUtils.remove_dir path) if Dir[path+"//*"].empty? else p "del File : " + path if 1==File.delete(path) end return rescue p "err!["+$!.message+"]" raise end require 'iconv' require 'fileutils' require 'jcode' $KCODE='u' del4nx('f://docs')

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0712s