List 如何在主目录中列出一组子目录中的所有文件?

List 如何在主目录中列出一组子目录中的所有文件?,list,file,batch-file,cmd,directory,List,File,Batch File,Cmd,Directory,例如:用121列出子目录中的所有文件。在子目录名称中 此代码: @echo off for /d %%a in (*121.*) do echo %%a >> get_dirs.txt 将输出我要查找的文件夹,但一旦设置好,我只希望在get_dirs.txt文件列表中查找,以从该列表中的目录中获取文件。我到处搜索,只能找到如何列出每个子目录中的所有文件,但如果文件数超过10000个,则过程可能会变慢 提前谢谢。如果我能有一个输出文件,那将是一个额外的收获 @echo off for

例如:用121列出子目录中的所有文件。在子目录名称中

此代码:

@echo off
for /d %%a in (*121.*) do echo %%a >> get_dirs.txt
将输出我要查找的文件夹,但一旦设置好,我只希望在get_dirs.txt文件列表中查找,以从该列表中的目录中获取文件。我到处搜索,只能找到如何列出每个子目录中的所有文件,但如果文件数超过10000个,则过程可能会变慢

提前谢谢。如果我能有一个输出文件,那将是一个额外的收获

@echo off
for /f "delims=" %%h in ('for /d %%a in (*121.*^) do @echo %%a') do dir %%h
应该给你目录列表

如果有一个名称为121的空目录,则会出现该错误

这应该可以解决这个问题:

@echo off
for /f "delims=" %%h in ('for /d %%a in (*121.*^) do @echo %%a') do IF EXIST "%%h\*" dir %%h
注意for/d中回声之前的@..-确保for/d的输出仅包含必需的行,而不包含提示

@echo off
  (for /r /d %%a in (*121*) do for %%b in ("%%~fa\*") do echo "%%~fb")>output.txt

对于名称为121的每个文件夹,对于该文件夹中的每个文件,回显文件的完整路径

为什么不dir/s*\*121**>get\u dirs.txt?不需要for循环。我收到以下错误:文件名、目录名或卷标语法不正确。感谢您的快速响应,但我收到一个“未找到文件”错误。我想获取目录中包含121的文件。在名称中找到字符串。名称中肯定有一个包含121个文件的目录,但它会显示找不到文件。另外,我希望文本文件输出仅包含单个文件的完整路径,而不是其中的卷信息。我很感谢你在这方面花时间。这正是我想要的,那么我如何才能将它写成文本文件输出呢?这对我来说根本不起作用。生成了一个文件,但没有写入任何内容,尽管我知道文件夹中有文件。@BillyD,对不起,是我的错。现在更正了应该是a的b,并添加了重定向代码。非常好!!非常感谢你!如果我希望输出不带引号,那么我只需将%%~fb替换为%%~fb不带引号。这为我解决了问题。非常感谢。