自动解析 github仓库的目录列表

我在 github上有个维护时间比较长的 repository,开始时只有几个文件,后来文件数目逐渐增多,期间整理了好几次,现在已经整理成了好几个文件夹了,有时候想找某个文件的时候,但是不确定到底在哪个文件夹里面,于是就凭感觉一个一个文件夹试过去,层级少点还好,但是层级一多,就算是明确知道在哪个文件夹里,一层层点进去也要点好几次于是心中一动,就想着把当前仓库的目录结构列出来,直接写在 READM...
摘要由CSDN通过智能技术生成

我在 github上有个维护时间比较长的 repository,开始时只有几个文件,后来文件数目逐渐增多,期间整理了好几次,现在已经整理成了好几个文件夹了,有时候想找某个文件的时候,但是不确定到底在哪个文件夹里面,于是就凭感觉一个一个文件夹试过去,层级少点还好,但是层级一多,就算是明确知道在哪个文件夹里,一层层点进去也要点好几次

于是心中一动,就想着把当前仓库的目录结构列出来,直接写在 README.md文件上,想看哪个文件直接点,一次点击即可,手写目录肯定是不太友好的,因为我可能频繁增删文件,甚至是再次整理文件结构,而且也不具备通用性,万一哪天又想把另外一个仓库也列出目录结构,那么又要手写一遍,所以最好写个代码程序来帮我完成这种工作

先看效果图:

在这里插入图片描述

递归获取所有文件路径

目标是输出目录的层级结构,那么首先要把当前仓库根目录下所有文件的路径获取到,思路很清晰的,先用 fs.readdirSync读取目录,并且递归循环子目录,直到最后一层

function getDirStruct(basePath = __dirname) {
   
  const files = fs.readdirSync(basePath)
  files.forEach(file => {
   
    // 处理先不要显示的文件
    if (excludeFile.indexOf(file) !== -1 || excludePrefix.some(pre => file.indexOf(pre) === 0)) return
    const fullPath = path.resolve(basePath, file)
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值