从文件夹列出文件包括子文件夹批处理

时间:2015-02-12 09:55:09

标签: batch-file cmd

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

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

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

我也尝试过:

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

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

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

在批处理文件中使用

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

从命令行使用

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

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