我想写一个bat文件,它可以遍历文件夹内所有jpg,png格式的文件,并新建一个txt打印出来,用逗号隔开 ,这个txt文件的名字用上级文件夹的名字命名,我该怎么写
时间: 2023-11-02 08:06:17 浏览: 191
使用bat获取当前路径下所有文件夹和文件名,并换行输出至txt文件中
你可以尝试使用以下的代码实现:
```bat
@echo off
setlocal enabledelayedexpansion
set "folder=%cd%"
set "parentFolder=%folder%\.."
for %%F in ("%parentFolder%") do set "txtName=%%~nxF.txt"
set "files="
for /r "%folder%" %%f in (*.jpg *.png) do (
set "files=!files!,%%~nxf"
)
echo %files:~1% > "%txtName%"
```
这个脚本首先获取当前目录并设置一个变量 `folder`,然后获取上级目录并将其设置为 `parentFolder`。接下来,通过 `for` 循环将上级目录的名称与扩展名拼接成一个变量 `txtName`,用于保存输出的 txt 文件。然后使用另一个循环遍历 `folder` 目录下的所有 jpg 和 png 文件,并将文件名保存在 `files` 变量中。最后,使用 `echo` 将 `files` 变量写入 `txtName` 文件中。
注意,这个脚本假设当前目录是包含 jpg 和 png 文件的目录。如果你想运行该脚本,请将它保存到包含这些文件的目录中,并在命令行中运行该脚本。
阅读全文