使用for /D和dir命令循环遍历目录树,将第一个文件的名称存储到变量中,然后使用echo命令将结果输出到文本文件中。以下是示例代码:
@echo off setlocal enableextensions enabledelayedexpansion
set "outputfile=result.txt"
(for /d /r %%a in (*) do ( set "first=1" for %%b in ("%%a*") do ( if defined first ( set "first=" echo %%~nxb >> "%outputfile%" ) ) )) >> "%outputfile%"
echo "批处理文件执行完毕。"
在此代码中,“outputfile”变量存储结果将保存的文本文件的名称。该for /d /r循环可从当前目录递归遍历所有子目录。在每个目录中,使用for循环列出该目录中的所有文件,并将第一个文件的名称写入文本文件中。为了确保只写入每个目录中的第一个文件,使用“first”变量进行控制。如果是第一个文件,则将“first”变量设置为未定义,但仅输出文件名,否则不执行任何操作。