nodejs 实现递归删除文件夹以及子文件

nodejs 实现递归删除文件夹以及子文件

点点

2021-04-19 20:12 阅读 537 喜欢 1

nodejs 删除文件直接使用fs.unlink 就可以,删除文件使用fs.rmdir就行,nodejs 不支持删除有文件的文件夹,所以,还需要对文件进行递归来删除文件夹。

//删除目录下的所有文件 function delFile(fileUrl,flag){ if (!fs.existsSync(fileUrl)) return; // 当前文件为文件夹时 if (fs.statSync(fileUrl).isDirectory()) { var files = fs.readdirSync(fileUrl); var len = files.length, removeNumber = 0; if (len > 0) { files.forEach(function(file) { removeNumber ++; var stats = fs.statSync(fileUrl+'/'+file); var url = fileUrl + '/' + file; if (fs.statSync(url).isDirectory()) { delFile(url,true); } else { fs.unlinkSync(url); } }); if(len == removeNumber && flag){ fs.rmdirSync(fileUrl); } } else if(len == 0 && flag){ fs.rmdirSync(fileUrl); } } else { // 当前文件为文件时 fs.unlinkSync(fileUrl); console.log('删除文件' + fileUrl + '成功'); } }

效果:

  1. 如果要删除的是文件,且存在,则直接删除
  2. 如果要删除的是文件夹,那么会遍历文件夹下的文件(文件夹),然后执行递归
  3. 不会删除第一次传递的文件夹

比如: delFile('d:/ttt') ,会删除d:/ttt下的所有文件和文件夹,但是ttt不会被删除。

有删除,那么就会有创建,比如"给定一个目录,然后批量创建会怎么样"?

推荐一个nodejs的包:mkdirsp promise版本的

使用超级简单:

安装:

npm install mkdirsp

使用

//引入 mkdirsp var mkdirsp = require('mkdirsp'); mkdirsp('/home/web/upload').then(function(){ console.log('create success'); }).catch(function(e){ console.log(e); });

转载请注明出处: http://sdxlp.cn/article/批量删除文件夹.html


如果对你有用的话,请赏给作者一个馒头吧 ...或帮点下页面底部的广告,感谢!!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
在生活中,小伙伴们有没有遇到过,用微信付款,离开后发现付错款啦?自己的东西放在商家那里忘记拿了?其实,微信有一个非常贴心的功能,是可以联系到商家的,怎么联系哪?跟着点点来看看吧!
智能化的时代,当微信的出现,QQ聊天软件现在基本上已经沦为工作与游戏的专用了,用久了之后我们还是建议时不时清理一下没用的聊天记录,毕竟现在这两款软件已经升级为“3A”大作了,电脑里除了视频照片就属QQ/微信占用空间最多。当然我们也可以选择备份聊天记录,这样一来换电脑或者有需要都可以直接完全备份,下面就跟着小编一起来看看具体如何操作吧。
c盘哪些文件可以删除?C盘里面的哪些文件可以删除?当我们在使用电脑一段时间之后,可以看到自己的C盘一下就多了很多内存,非常影响系统运行,那c盘哪些文件可以删除,怎么把C盘不需要的文件删除,下面就和小编一起来看看吧!
微信是我们常用的交流工具,我们在平时聊天中会发送图片产生内存过大的问题,很多小伙伴对此非常头疼,那么我们该怎样处理哪,点点告诉小伙伴们在电脑端怎么去查看导出并删除的方法。
腾讯微信的拍一拍具有非常好玩的功能,可以双击对方的头像,显示出非常可爱的拍一拍后缀,所以很多小伙伴们想要知道微信拍拍功能怎么给自己加文字,这样就会显示出好玩的后缀文字,下面就让小编给小伙伴们介绍一下微信拍拍功能给自己加文字教程。
无论是上班族,还是上学党,只要一提到钉钉这款软件,想必小伙伴们都很熟悉,因为不管是上课直播,还是云办公,我们都会在手机上用到钉钉这款软件。
我们在工作中会用到各种各样的表格,而WPS表格是我们现在经常使用的办公软件,当我们有文档的时候,可以直接导入进表格中,而不用我们手动输入。今天小编就告诉大家电脑端怎么将TXT文档导入进WPS表格中。
如果你平时也不爱听六十秒的语音,或者是因为没带耳机,不方便听语音,那么不妨赶快跟着本文将语音自动转换成文字的方法设置起来,这样一来,不管是不爱听语音,还是不方便听语音,都能够轻松的知道别人想说的是什么了,令日常沟通变得更加便利。