批处理文件列出所有子文件夹路径

时间:2016-05-20 06:23:01

标签: windows batch-file cmd

我正在尝试编写一个从程序位置运行的命令。该程序要求用户键入要搜索的文件夹,当找到该文件夹​​时,我需要一个目录列表到其子文件夹。以下是我目前的代码:

ECHO OFF
ECHO Enter name for your target search folder
SET /P searchf=[Please type desired search forder]
for /d %%a in ("%searchf%".) do dir /ad /on /s /b "%%a" >> %searchf%.txt
GOTO End
:End

假设目标文件夹被调用" test",我希望得到这样的结果:

C:\Users\IT\test\pany\all
C:\Users\IT\test\ondy\part\clear
C:\Users\IT\pany\test\check\apps
C:\Users\IT\pand\all\check\test

到目前为止,我的代码返回dir,直到" test"被发现了。

1 个答案:

答案 0 :(得分:1)

正如JosefZ指出的那样,外卡会有所帮助:

ECHO OFF
ECHO Enter name for your target search folder
SET /P searchf=[Please type desired search forder]
dir /ad /on /s /b "*%searchf%*" 

由于只有一个搜索词,因此您不需要for循环。

使用变量文件名我认为很难,这就是为什么我第一次将它改为固定文件名,直到我发现在屏幕上有一个目录列表,你可以直接使用dir输出。