Node.js之删除文件夹(含递归删除)代码实例


Posted in Javascript onSeptember 09, 2019

应用场景:比如像Eclipse这样的IDE,右击项目,出现选项,点击选项中的删除,就可以删除这个项目及其下的子目录包含文件(使用electron开发的桌面端项目多少都会用到)。

核心代码如下:

/**
   *
   * @param {*} url
   */
  function deleteFolderRecursive(url) {
    var files = [];
    /**
     * 判断给定的路径是否存在
     */
    if (fs.existsSync(url)) {
      /**
       * 返回文件和子目录的数组
       */
      files = fs.readdirSync(url);
      files.forEach(function (file, index) {

        var curPath = path.join(url, file);
        /**
         * fs.statSync同步读取文件夹文件,如果是文件夹,在重复触发函数
         */
        if (fs.statSync(curPath).isDirectory()) { // recurse
          deleteFolderRecursive(curPath);

        } else {
          fs.unlinkSync(curPath);
        }
      });
      /**
       * 清除文件夹
       */
      fs.rmdirSync(url);
    } else {
      console.log("给定的路径不存在,请给出正确的路径");
    }
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
Apr 27 Javascript
JS实现日期加减的方法
Nov 29 Javascript
js对字符的验证方法汇总
Feb 04 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
Sep 26 Javascript
Bootstrap入门书籍之(零)Bootstrap简介
Feb 17 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
Apr 18 Javascript
浅谈AngularJS中ng-class的使用方法
Nov 11 Javascript
bootstrap table操作技巧分享
Feb 15 Javascript
原生javascript实现读写CSS样式的方法详解
Feb 20 Javascript
JavaScript屏蔽Backspace键的实现代码
Nov 02 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 Javascript
vue--vuex详解
Apr 15 Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
Sep 09 #Javascript
微信小程序 wx:for遍历循环使用实例解析
Sep 09 #Javascript
layer关闭当前窗口页面以及确认取消按钮的方法
Sep 09 #Javascript
微信小程序 checkbox使用实例解析
Sep 09 #Javascript
js之切换全屏和退出全屏实现代码实例
Sep 09 #Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
Sep 09 #Javascript
一次微信小程序内地图的使用实战记录
Sep 09 #Javascript
You might like
PHP中的替代语法简介
2014/08/22 PHP
js判断FCKeditor内容是否为空的两种形式
2013/05/14 Javascript
JavaScript实现存储HTML字符串示例
2014/04/21 Javascript
javascript实现微信分享
2014/12/23 Javascript
简单介绍JavaScript的变量和数据类型
2015/06/03 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
JS+Canvas绘制动态时钟效果
2017/11/10 Javascript
Angular6笔记之封装http的示例代码
2018/07/27 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
2019/07/18 Javascript
js回调函数仿360开机
2019/12/26 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
原生js中运算符及流程控制示例详解
2021/01/05 Javascript
[44:22]完美世界DOTA2联赛循环赛 FTD vs PXG BO2第一场 11.01
2020/11/02 DOTA
python打开网页和暂停实例
2014/09/30 Python
python 循环遍历字典元素的简单方法
2016/09/11 Python
Python实现读取文件最后n行的方法
2017/02/23 Python
Python 给屏幕打印信息加上颜色的实现方法
2019/04/24 Python
Python中print函数简单使用总结
2019/08/05 Python
Django使用中间件解决前后端同源策略问题
2019/09/02 Python
Python使用Pandas读写Excel实例解析
2019/11/19 Python
Python基于smtplib模块发送邮件代码实例
2020/05/29 Python
Python unittest装饰器实现原理及代码
2020/09/08 Python
海淘零差价,宝贝全球购: 宝贝格子
2016/08/24 全球购物
高中毕业生自我鉴定例文
2013/12/29 职场文书
微信营销策划方案
2014/02/24 职场文书
洗发水广告词
2014/03/13 职场文书
大学学生会竞选演讲稿
2014/04/25 职场文书
家长给学校的建议书
2014/05/15 职场文书
医学专业自荐信
2014/06/14 职场文书
个人查摆问题自查报告
2014/10/16 职场文书
政风行风建设整改方案
2014/10/27 职场文书
地道战观后感400字
2015/06/04 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书
工作违纪的检讨书范文
2019/07/09 职场文书
七年级作文之英语老师
2019/10/28 职场文书