Board logo

标题: [文件操作] [分享]批处理查找或删除二级文件夹下的空白文件夹 [打印本页]

作者: Batcher    时间: 2022-9-25 18:26     标题: [分享]批处理查找或删除二级文件夹下的空白文件夹

【问题描述】

有什么方法可以批量查找出二级文件夹下面是空白文件夹么?

├─1
│  ├─1-1
│  │      1-1.jpg
│  │      
│  └─1-2
├─2
│  └─2-1
└─3
    ├─3-1
    └─3-2
            3-2.jpg
作者: Batcher    时间: 2022-9-25 18:27

【解决方案】

查找二级文件夹下的空白文件夹_1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. for /f "delims=" %%i in ('dir /b /ad') do (
  5.     pushd "%%i"
  6.     for /f "delims=" %%j in ('dir /b /ad') do (
  7.         set "FolderEmpty="
  8.         for /f "delims=" %%k in ('dir /a /b "%%j"') do (
  9.             set "FolderEmpty=%%k"
  10.         )
  11.         if "x!FolderEmpty!" equ "x" (
  12.             echo %~dp0%%i\%%j 是空文件夹
  13.         )
  14.     )
  15.     popd
  16. )
  17. pause
复制代码

作者: Batcher    时间: 2022-9-25 18:34

删除二级文件夹下的空白文件夹_1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /ad') do (
  4.     pushd "%%i"
  5.     for /f "delims=" %%j in ('dir /b /ad') do (
  6.         rd "%~dp0%%i\%%j" 2>nul
  7.     )
  8.     popd
  9. )
  10. pause
复制代码

作者: WindCat    时间: 2022-9-25 22:20

  1. if not "%1"=="" (
  2. cd /d "%1"
  3. if "%errorlevel%"=="0" (goto:inputparam_1_not_is_null)
  4. )
  5. echo 当前执行文件夹为:"%~dp0"
  6. set temp_userinput_var_a="%~dp0"
  7. set /p temp_userinput_var_a=拖入文件夹:
  8. cd /d "%temp_userinput_var_a%"
  9. :inputparam_1_not_is_null
复制代码
提升点易用性?随便打的,不过加了这个要考虑管理员权限导致的路径变化就是了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2