`

Ruby 获取某个目录下的所有文件及文件夹

阅读更多

通过Ruby的Find模块可以执行类似find命令,然后获得某个目录下的所有文件和文件夹列表。

def scanf(path)
  list=[]
  Find.find(path) do |f|
     list << f
  end
  list.sort
end

 

按前缀进行合并:

def mergePre(list)
  res = []
  newList = list.sort
  newList.each do |i|
    r = true
    res.each do |j|
      if i.index(j)==0
        r = false
        break
      end
    end
    res << i if r
  end
  res
end
 
分享到:
评论

相关推荐

    ruby 目录操作详细介绍

    可以先获取文件夹内所有文件,然后逐个删除: ```ruby Dir.foreach("folder_to_empty") do |filename| next if filename == '.' || filename == '..' File.delete(filename) end ``` 6. 读取文件 读取文件内容,...

    Windows下redis集群的搭建

    - 在每个节点文件夹内创建一个批处理文件(如`redis-6379.bat`),内容为`redis-server.exe redis.windows.conf`,用于启动Redis服务。 5. **安装Ruby环境** - 下载并安装Ruby Installer,确保版本为2.5.1-1或更...

    matlab导入excel代码-datavyu:www.datavyu.org软件使用的脚本

    确保要转换为.csv的.opf文件全部位于计算机上某个位置的文件夹中。 运行该脚本datavyu2csv.rb通过datavyu 出现提示时,选择包含.opf文件的文件夹 将创建一个新的子文件夹,该子文件夹将为您在所选文件夹中找到的每一...

    Laravel开发-cvrapi

    在 `laravel-cvrapi-master` 文件夹中,可能包含了这个项目的源代码,包括 `app/Http/Controllers` 目录下的控制器文件、`app/Models` 下的模型文件、`config` 目录下的配置文件、`routes/web.php` 或 `routes/api....

    website(1)-源码.rar

    "源码"一词表明这是一个包含网站源代码的压缩文件,可能是一个独立的网页项目或者是某个网站的一部分。RAR是一种常见的压缩格式,用于打包和传输多个文件或文件夹。 【描述分析】:描述部分只重复了标题,没有提供...

    wxBlog-源码.rar

    "rar"是文件压缩格式,通常用于存储多个相关文件或目录,以便于传输和存储。源码指的是程序的原始代码,这意味着这个压缩包包含了一个博客系统的编程代码,可能是用Python、Java、PHP或其他编程语言编写的。 【描述...

    solaris 10 install oracle 10

    在压缩包文件的文件名称列表中,我们看到的如 `CHANGELOG`、`LICENSE`、`Rakefile`、`README` 等通常是开源项目中常见的文件,它们可能不属于 Oracle 10g 的安装文件,但可能与某个与安装过程相关的工具或脚本有关。...

    sublime Text 3 CTags

    接下来,右键项目文件夹(在侧边栏中)选择"SideBarEnhancements" &gt; "CTags" &gt; "Update Tags",这将自动扫描并创建tags文件。之后,你就可以享受CTags带来的便捷:在代码中点击函数名,按`F12`(或通过其他自定义...

    aA_classWork

    由于提供的文件名称列表只包含 "aA_classWork-main",我们可以推测这可能是一个项目的主目录或者源代码文件夹。 Ruby 是一种面向对象的、动态类型的编程语言,由日本的松本行弘(Yukihiro Matsumoto)于1995年设计...

    bobo1

    3. **配置文件**:如"config"或"settings"目录下的XML、JSON或ini文件,用于设置程序的行为。 4. **构建脚本**:如"build.gradle"、"Makefile"或"package.json",用于编译、打包和部署项目。 5. **测试文件**:可能...

    ubuntu skills

    - **查找文件属于哪个包**:如果想知道某个文件属于哪个软件包,可以使用 `dpkg -S &lt;file&gt;` 命令。 - **查看已经安装了哪些包**:通过 `dpkg --get-selections` 或 `apt list --installed` 来查看已安装的软件包列表...

    Agile Web Development with Rails-Second Edition-Beta一书例子

    《Agile Web Development with Rails-Second Edition-Beta》是一本专注于使用Ruby on Rails框架进行敏捷Web...如果你对某个特定功能或问题有疑问,可以参考书中的描述或者在线博客资源,以获取更详细的解释和解决方案。

    happygamer500

    然而,根据压缩包文件名“happygamer500-main”,我们可以推测这可能是某个项目的主目录或者源代码文件。 在IT领域,尤其是软件开发中,项目通常被组织为多个文件和文件夹,其中“main”往往指示着这是程序的核心...

    lucidmaj8.github.io:lucidmaj8.github.io

    【标题】:“lucidmaj8.github.io:lucidmaj8.github.io”这个标题表明这是一个与个人或项目相关的GitHub页面,可能是用户lucidmaj8的个人网站或者是某个开源项目的在线展示。 【描述】:“lucidmaj8.github.io:...

    synkstar.github.io

    7. **.gitignore**:定义了在提交到Git仓库时应忽略的文件和目录。 8. **.github** 文件夹:可能包含与GitHub操作相关的配置文件,如Pull Request模板。 9. **_posts** 或类似的文件夹:如果这是一个博客,可能会...

    2021-2022计算机二级等级考试试题及答案No.13433.docx

    5. 关闭无响应应用程序:在Windows中,当某个应用程序无响应时,可以通过按下Ctrl+Alt+Del组合键打开任务管理器,然后选择无响应的程序并点击“结束任务”来强制关闭它。正确答案:正确。 6. 连接SQL Server数据库...

    heroku:libDrive是类似于Plex的媒体库管理器,可组织Google Drive文件夹并提供直观的界面来浏览它们

    - **movies-api**:可能libDrive利用了某个电影数据库API(如IMDb或The Movie Database)来获取电影元数据,以增强用户体验。 - **Python**:libDrive很可能使用Python编程语言编写,因为这是开发Web应用和处理...

    selfpub:xrubyyy

    在描述中同样出现的"selfpub:xrubyyy",可能是指一个特定的自我出版项目或者是某个代码库、文件夹或者资源的命名。这里的信息量较少,我们只能推测它与自我出版有关,而"xrubyyy"可能是该项目的个性化标识,或者是...

    cjbohlman.github.io

    这些文件可以放在`_portfolio`目录下,然后在主页面模板中循环显示。 **编辑简历** 创建或编辑简历页面,可以使用Jekyll的Markdown功能,将个人信息、工作经历、技能和教育背景等内容以清晰、格式化的样式呈现。...

    ValentinaShutkinaMobile

    然而,由于"ValentinaShutkinaMobile-master"是压缩包内的文件夹名,可以推断这很可能是一个Git仓库的主分支,其中包含了项目的完整源代码和资源文件。 在移动应用开发中,一个典型的项目结构通常包括以下几个部分...

Global site tag (gtag.js) - Google Analytics