固定3层目录树生成工具

用于Windows上一个可以快速查看当前文件夹下3层文件夹结构的脚本程序,给对象写的小工具,适合计算机知识一般的朋友使用。

使用举例:你有ABC3个硬盘,但是你要怎么才知道你哪个硬盘有哪些文件呢?将该程序复制在每一个硬盘的第一级(根文件夹)中,双击,即可生成文件结构信息。例如我有3个移动硬盘,我在我的电脑上创建了一个笔记文件,汇总这个脚本生成的文件信息,我想知道我的文件在哪个硬盘,只需在这个笔记文件中查找就行了。适用于有很多个硬盘的朋友。

这是很久以前写的,经常使用,现在翻出来改一改,水一水。

使用方法:记事本新建“固定3层目录树生成工具 (最终版)V2.1 .txt”文件,然后将下面的代码复制进去,文件-另存为,名称为“固定3层目录树生成工具 (最终版)V2.1 .bat”,编码为“ANSI”即可。

@echo off
setlocal

:: =================================================================
:: 脚本名称: 固定3层目录树生成工具 (最终版)V2.1 2025-9-22
:: =================================================================

echo 【名称】固定3层目录树生成工具 (最终版)V2.0 2025-9-22
echo 【作者】pixelpulse
echo 【说明】用于替代没有安装Git bash的电脑使用,模拟tree -d -N -L 3 命令,常用于多硬盘目录查看和管理
echo 【测试环境】Windows11 24H2
echo 【使用方法】直接将该脚本移动到你要打印的文件夹下,双击运行!O(∩_∩)O

:: 1. 定义临时文件的路径和名称。
set "TMP_FILE=%~dp0\~tree_output_%RANDOM%.tmp"

:: 2. 执行核心的目录扫描逻辑。
(
    echo .
    cd /d "%~dp0"
    for /d %%d in (*) do (
        echo +---%%~nxd
        for /d %%s in ("%%~fd\*") do (
            echo ^|   +---%%~nxs
            for /d %%t in ("%%~fs\*") do (
                echo ^|   ^|   +---%%~nxt
            )
        )
    )
) >"%TMP_FILE%" 2>&1

:: 3. 过滤并显示结果。
findstr /v "系统找不到指定的驱动器。" "%TMP_FILE%"

:: 4. 清理工作:执行临时文件清理操作
echo.
echo 正在清理临时文件...

:: 强制切换到主脚本所在的目录
cd /d "%~dp0"

:: 执行已在单元测试中验证成功的、最直接的删除命令
del /F /Q "~tree_output_*.tmp"
echo 清理完毕,请按查看目录树输出结果,如需退出请按任意键

endlocal
echo.
pause

image-20250922161332009

posted @ 2025-09-22 16:26  舟清颺  阅读(40)  评论(0)    收藏  举报