收集的多个ruby遍历文件夹代码实例
发布时间:2020-12-16 22:52:43 所属栏目:百科 来源:网络整理
导读:一、遍历文件夹下所有文件,输出文件名 复制代码 代码如下: def traverse_dir(file_path) if File.directory file_path Dir.foreach(file_path) do |file| if file !="." and file !=".." traverse_dir(file_path+"/"+file) end end else puts "File:#{File.
一、遍历文件夹下所有文件,输出文件名 复制代码 代码如下: def traverse_dir(file_path) if File.directory? file_path Dir.foreach(file_path) do |file| if file !="." and file !=".." traverse_dir(file_path+"/"+file) end end else puts "File:#{File.basename(file_path)},Size:#{File.size(file_path)}" end end traverse_dir('D:/apache-tomcat') 二、ruby遍历文件夹 复制代码 代码如下: def get_file_list(path) Dir.entries(path).each do |sub| if sub != '.' && sub != '..' if File.directory?("#{path}/#{sub}") puts "[#{sub}]" get_file_list("#{path}/#{sub}") else puts " |--#{sub}" end end end end 三、python如何遍历一个目录输出所有文件名 复制代码 代码如下: #coding=utf-8 ''' Created on 2014-11-14 @author: Neo ''' import os def GetFileList(dir,fileList): newDir = dir if os.path.isfile(dir): fileList.append(dir.decode('gbk')) elif os.path.isdir(dir): for s in os.listdir(dir): #如果需要忽略某些文件夹,使用以下代码 #if s == "xxx": #continue newDir=os.path.join(dir,s) GetFileList(newDir,fileList) return fileList list = GetFileList('D:workspacePyDemofas',[]) for e in list: print e result: 复制代码 代码如下: D:workspacePyDemofasfile120141113a.20141113-1100.log D:workspacePyDemofasfile120141113a.20141113-1101.log D:workspacePyDemofasfile120141113a.20141113-1140.log D:workspacePyDemofasfile220141113a.20141113-1100.log D:workspacePyDemofasfile220141113a.20141113-1101.log D:workspacePyDemofasfile220141113a.20141113-1140.log 四、简洁遍历写法 复制代码 代码如下: import os def iterbrowse(path): for home,dirs,files in os.walk(path): for filename in files: yield os.path.join(home,filename) for fullname in iterbrowse("/home/bruce"): print fullname (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |