欢迎来到优智文库! | 帮助中心 | 优智文库,优质文档!
优智文库
全部分类
  • 办公资料   合同协议 >
  • 各类报告   商业管理 >
  • 行业资料   小学资料 >
  • IT计算机   初中资料 >
  • 土木建筑   高中资料 >
  • 机械制造   通信电子 >
  • 文学艺术   资格认证 >
  • 幼儿资料   高校资料 >
  • 医学心理   学术专区 >
  • 生活休闲   其它 >
  • BAT命令行清除当前目录及子目录中的空文件夹代码

    模式一:清空最底层的空文件夹

    你可以使用以下批处理命令来实现这个需求。这段代码将检查当前目录及其子目录下的所有文件夹,如果文件夹为空,则将其删除,无论文件夹名中是否含有中文字符。

    请将以下代码保存为一个 .bat 文件,然后在包含要清理的子目录的根目录下运行该文件。


    @echo off

    setlocal enabledelayedexpansion

    for /d /r %%A in (*) do (

        set "folder=%%A"

        set "count=0"

        for /f "tokens=*" %%B in ('dir /b /a "%%A"') do (

            set /a count+=1

        )

        if !count! EQU 0 (

            echo 删除空文件夹: "!folder!"

            rmdir "!folder!"

        )

    )

    pause


    模式二:清空当前目录下所有的空文件夹

    这种情况下需要多次运行脚本,直到所有空文件夹都被删除。为了解决这个问题,我们可以使用循环来确保脚本会一直执行,直到不存在空文件夹为止。请参考以下修改后的批处理代码:


    @echo off

    setlocal enabledelayedexpansion

    :Loop

    set "emptyFoldersFound=0"

    for /d /r %%A in (*) do (

        set "folder=%%A"

        set "count=0"

        for /f "tokens=*" %%B in ('dir /b /a "%%A"') do (

            set /a count+=1

        )

        if !count! EQU 0 (

            echo 删除空文件夹: "!folder!"

            rmdir "!folder!"

            set "emptyFoldersFound=1"

        )

    )


    if %emptyFoldersFound% EQU 1 (

        goto Loop

    )


    echo 所有空文件夹已被删除。

    pause


    这个修改后的脚本在每次循环时都会检查所有文件夹。当发现空文件夹时,它将删除空文件夹并将emptyFoldersFound变量设置为1。脚本将继续执行循环,直到没有找到空文件夹。

    以上代码若要完整显示中文字符,需要保存为ANSI编码。

    分享到微信 分享到微博 分享到QQ空间

    联系邮箱:13306624#qq.com (将#替换成@)

    本站为C2C文档模式,即用户上传的文档直接被用户下载,本站只是中间服务平台。

    优智文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。

    若文档所含内容侵犯了您的版权或隐私,请立即通知我们,我们立即给予删除!

    鲁ICP备2022033855号-2      鲁B2-20221817      公安备案  鲁公网安备 37160202000824号

    在线客服 百度小程序
    收起
    展开