如何通过bat批处理实现快速生成文件目录,一键生成文件名和文件夹名目录

碰对了情人,相思一辈子。

具体方法步骤:

一、创建一个执行bat文件(使用记事本即可);

1、新建一个txt文本空白记事本文件

2、复制以下内容进记事本内

dir/a/s/b>LIST.TXT

(其中LIST.TXT文件名是提取后将要自动新建的文本文件)

二、记事本保存,文件名可以任意写

三、把保存的文件名后缀.txt改为.bat,这样就形成了一个可以执行的文件

四、把改了名的文件复制到需要输出文件夹和文件名称的文件夹内

五、双击运行bat文件,文件夹会自动生成LIST.TXT文件,里面就包含了该文件夹下的所有文件名称。

附注:

/b是去掉多余信息,其中把/a改/ad 表示只要文件夹,如果改成/a-d则是只要文件,如:

dir/ad/s/b>LIST.TXT (只要文件夹名列表)

dir/a-d/s/b>LIST.TXT(只要文件名列表)

更多命令: dir /b >LIST.TXT (输出干净的文件名,不包括文件夹名)

dir /s /n >list.txt(输出文件名和文件夹列表,并包含文件信息。)

此种方法一次制成批处理文件,可以长期使用,不用每次都新建bat批处理文件或者cmd批处理文件。

你可以使用 Windows 的批处理文件(.bat)来实现快速生成文件目录和一键生成文件名与文件夹名目录的操作。下面是两种常用的方法:

方法一:快速生成文件目录

以下是一个示例的批处理脚本,它可以在指定的路径下创建多层文件夹:

@echo off

setlocal enabledelayedexpansion

set "baseDir=C:\Your\Directory" REM 指定要创建目录的基础路径

for %%i in (Folder1 Folder2 Folder3) do (

set "dirPath=!baseDir!\%%i"

mkdir "!dirPath!"

echo Created directory: "!dirPath!"

)

echo All directories created.

pause

  • baseDir 的值更改为你想要创建目录的基础路径。
  • for 循环中,可以列出要创建的目录的名称,例如 Folder1Folder2Folder3
  • 这个批处理脚本会在基础路径下创建指定的目录,并在命令行中显示创建的目录名称。

方法二:一键生成文件名与文件夹名目录

以下是另一个示例的批处理脚本,它可以在指定的路径下创建多层文件夹,并在每个文件夹中创建相同名称的文件:

@echo off

setlocal enabledelayedexpansion

set "baseDir=C:\Your\Directory" REM 指定要创建目录的基础路径

set "fileName=SampleFile.txt" REM 指定要创建的文件名称

for %%i in (Folder1 Folder2 Folder3) do (

set "dirPath=!baseDir!\%%i"

mkdir "!dirPath!"

echo Created directory: "!dirPath!"

set "filePath=!dirPath!\!fileName!"

echo. > "!filePath!"

echo Created file: "!filePath!"

)

echo All directories and files created.

pause

  • baseDir 的值更改为你想要创建目录的基础路径。
  • fileName 的值更改为你要在每个文件夹中创建的文件名称。
  • for 循环中,可以列出要创建的目录的名称,例如 Folder1Folder2Folder3
  • 这个批处理脚本会在基础路径下创建指定的目录,并在每个目录中创建相同名称的文件。

将上述代码保存为 .bat 文件,然后双击运行它,就可以快速生成文件目录或一键生成文件名与文件夹名目录了。

如果你想要创建更多层次的目录或在每个文件夹中生成多个文件,你可以通过扩展上述的批处理脚本来实现。下面是一个示例,可以创建多层次的目录结构,并在每个目录中生成多个文件:

@echo off

setlocal enabledelayedexpansion

set "baseDir=C:\Your\Directory" REM 指定要创建目录的基础路径

set "numFolders=3" REM 指定要创建的顶级目录数量

set "numSubfolders=2" REM 指定每个顶级目录下的子目录数量

set "numFiles=3" REM 指定每个目录中要创建的文件数量

for /l %%a in (1,1,%numFolders%) do (

set "topLevelDir=!baseDir!\Folder%%a"

mkdir "!topLevelDir!"

echo Created directory: "!topLevelDir!"

for /l %%b in (1,1,%numSubfolders%) do (

set "subDir=!topLevelDir!\Subfolder%%b"

mkdir "!subDir!"

echo Created directory: "!subDir!"

for /l %%c in (1,1,%numFiles%) do (

set "fileName=File%%c.txt"

set "filePath=!subDir!\!fileName!"

echo. > "!filePath!"

echo Created file: "!filePath!"

)

)

)

echo All directories and files created.

pause

这个批处理脚本使用嵌套的 for 循环来创建多层次的目录结构。你可以通过更改 numFoldersnumSubfoldersnumFiles 的值来指定要创建的目录数量、每个目录下的子目录数量以及每个目录中要生成的文件数量。

将上述代码保存为 .bat 文件,双击运行它,它将会在指定的基础路径下创建多层次的目录结构,并在每个目录中生成多个文件。

请根据你的需求和目录结构设计进行适当的调整和修改。这个示例可以作为一个起点,你可以根据需要扩展和改进它。

相关推荐
带刺的坐椅2 小时前
用 ChatModel 构建 LLM 驱动的 Java 应用
java·ai·llm·solon·rag·chatmodel
复杂网络3 小时前
AI 不睡觉,但它比你更会做实验
算法
TrisighT3 小时前
Electron 跑鸿蒙 PC 上,这 4 个 API 的行为跟 Windows 完全不一样——但文档一行都没写
windows·electron·harmonyos
贵慜_Derek3 小时前
MAI-04|干净数据在工程上意味着什么:MAI 预训练数据治理
人工智能·算法·llm
用户3721574261353 小时前
Java 将 Word 文档转换为 Markdown:基础转换与导出选项详解
java
行者全栈架构师4 小时前
PolarDB + Spring Boot 实战:从自建MySQL到云原生数据库的零停机迁移
java·后端·架构
karry_k20 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k20 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端