首页 > 其他分享 >Bat删除空文件夹

Bat删除空文件夹

时间:2023-11-21 11:11:57浏览次数:34  
标签:fp fp% Bat set 删除 %% rd 文件夹

删除空文件夹

批处理递归删除当前及子目录中的空文件夹

将以下代码复制保存至def.bat文件中,直接双击运行即可(不推荐使用)

@echo off
:deldir
setlocal enabledelayedexpansion
for /d %%a in (%1*) do (
set p="%%a\"
set p=!p:.\"=..\"!
rd !p! || ( call :deldir !p! & rd !p! )
)

 

出处:https://www.cnblogs.com/hhddd-1024/p/14275097.html

=======================================================================================

个人使用

优化:根据上面的思路修改,必须指定目标文件夹参数,调用方式:def.bat  "c:\tmp"

@echo off
cls
:deldir
setlocal enabledelayedexpansion
if [%1] equ [] echo 未指定文件夹 & goto :eof
set fp=%1
set fp="%fp%" & set fp=%fp:"=%
if "%fp%" neq "" if "%fp:~-1%" neq "\" set fp=%fp%\
set fp="%fp%"
for /d %%a in (%fp%*) do (
set p="%%a"
set p=!p:.\"=..\"!
rd !p! || ( call :deldir !p! & rd !p!)
)

 

优化二

 

 

=======================================================================================

 

标签:fp,fp%,Bat,set,删除,%%,rd,文件夹
From: https://www.cnblogs.com/mq0036/p/17846158.html

相关文章

  • Mybatis-Plus集成Sharding-JDBC与Flyway实现多租户分库分表
    背景公司产品部收到了一些重要客户的需求,他们希望能够依赖独立的数据库存储来支持他们的业务数据。与此同时,仍有许多中小客户,可以继续使用公共库以满足其需求。技术实现方面,此前持久层框架使用的Mybatis-plus,部分业务场景使用到了Sharding-JDBC用于分表,另外,我们的数据库版本控制工......
  • Mybatis-Plus集成Sharding-JDBC与Flyway实现多租户分库分表
    背景公司产品部收到了一些重要客户的需求,他们希望能够依赖独立的数据库存储来支持他们的业务数据。与此同时,仍有许多中小客户,可以继续使用公共库以满足其需求。技术实现方面,此前持久层框架使用的Mybatis-plus,部分业务场景使用到了Sharding-JDBC用于分表,另外,我们的数据库版本控制......
  • Spring5学习随笔-整合MyBatis(持久层)、连接池、Mapper文件
    学习视频:【孙哥说Spring5:从设计模式到基本应用到应用级底层分析,一次深入浅出的Spring全探索。学不会Spring?只因你未遇见孙哥】Spring持久层整合第一章、持久层整合1.Spring框架为什么要与持久层技术进行整合JavaEE开发需要持久层进行数据库的访问操作。JDBCMyBatis、Hibe......
  • 19. 删除链表的倒数第 N 个结点
    2023-11-2019.删除链表的倒数第N个结点-力扣(LeetCode)思路:    1先遍历一遍,计算链表长度,再遍历一遍,完成    2双指针:先后指针,先走n步,再一起走    3栈,先全入栈,再出栈完成双指针:‘/***Definitionforsingly-linkedlist.*publicclass......
  • 常见面试题-MySQL软删除以及索引结构
    为什么mysql删了行记录,反而磁盘空间没有减少?答:在mysql中,当使用delete删除数据时,mysql会将删除的数据标记为已删除,但是并不去磁盘上真正进行删除,而是在需要使用这片存储空间时,再将其从磁盘上清理掉,这是MySQL使用延迟清理的方式。延迟清理的优点:如果mysql立即删除数据,会导......
  • C#删除程序的log文件
    删除方法privatevoidCleanOldLogs(stringlogFolderPath){try{DirectoryInfodirectory=newDirectoryInfo(logFolderPath);FileInfo[]files=directory.GetFiles();//计算删除的日期......
  • Windows10 删除库文件夹
    删除打开注册表,找到以下:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace在左侧NameSpace目录下找到{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}子项删除注:64位系统可能需要额外删除以下目录的同名子项:计算机\HKEY_LOCAL_M......
  • Java 删除PDF页面 (免费工具分享)
    对PDF页面的增删通常需要借助专门的工具,而这些工具一般需要付费才能使用。那么我们可以通过Java代码免费实现这一功能吗?答案是肯定的。这篇文章就教大家如何使用一个免费的国产Java库来删除PDF中的指定页面或者删除PDF中的空白页。 使用Java快速删除PDF中的指定页面1.首先,我......
  • selenium用js删除元素后,在进行定位
    一个自动化项目,里面有200多个相同元素,着200多个元素,就文本不同。我就想着用文本定位就好了,但是Xpath没有办法定位到下面的元素。这是下面所遇到的问题:我就用了 //*[contains(text(),'金湾分公司')]去定位,但这么写没办法定位到,因为前面有注解<!---->(但我当时一直不知道什么原......
  • 代码随想录算法训练营第十一天 | ● 20. 有效的括号 ● 1047. 删除字符串中的所有相邻
    今日学习的内容●20.有效的括号varisValid=function(s){letstack=[];for(leti=0;i<s.length;i++){lettemp=s[i];if(temp=='('){stack.push(')')continue;}if(......