列出文件夹中的文件包括子文件夹批处理

List files from folder includins subfolders batch

我正在寻找一种方法来列出文件夹(包括子文件夹)中的所有 .jpg 文件。我知道这可以使用:

dir *.jpg /s /a-d >> output.txt

尽管 /a-d 开关应该删除文件路径,但在与 /s 结合使用以检查子文件夹时不会这样做。所以我确实得到了一个列表,但是有我不想要的完整路径。

我也试过:

forfiles /m *.jpg /s > output.txt

这非常接近我想要的,但我得到的是双引号之间的文件名。这通常不是问题,但我将该文件用于 xcopy 源目标 /exclude:output.txt 并且它不适用于引号。

如有任何帮助,我们将不胜感激。

在批处理文件中使用

(for /r %%a in (*.jpg) do @echo %%~nxa) > output.txt

从命令行使用

(for /r %a in (*.jpg) do @echo %~nxa) > output.txt

在这两种情况下,它都会递归搜索 .jpg 个文件,并为找到的每个文件回显其名称和扩展名。完整的 for 命令包含在括号中,其输出发送到指定的文件