Regex 批处理:查找文件夹中以开头的所有文件

Regex 批处理:查找文件夹中以开头的所有文件,regex,batch-file,Regex,Batch File,我不熟悉批处理脚本,并试图找到一种方法来遍历文件夹中的所有文件,并打印以Test_u开头、以.py结尾的所有文件(即python文件)的名称 我被困在这里: @echo off for /r %%f in (*) do ( echo %%f | findstr /r "^Test_[.]*\.py$" ) pause 但这不会在屏幕上显示任何内容。 你能帮忙吗 谢谢 Noam尝试“Dir/b”测试 您还可以执行“Dir/b”C:\path\Test.*.py”“您可能会发现Where命

我不熟悉批处理脚本,并试图找到一种方法来遍历文件夹中的所有文件,并打印以Test_u开头、以.py结尾的所有文件(即python文件)的名称

我被困在这里:

@echo off
for /r %%f in (*) do (
    echo %%f | findstr /r "^Test_[.]*\.py$"
)
pause
但这不会在屏幕上显示任何内容。 你能帮忙吗

谢谢

Noam

尝试“Dir/b”测试


您还可以执行“Dir/b”C:\path\Test.*.py”“

您可能会发现
Where
命令非常有用:

Where/R。“测试?*.py”

试试
“^Test.*\.py$”
为什么不将文件掩码与
FOR
命令一起使用呢<代码>用于/r%%f in(测试*.py)do(可能还想解释
/S
开关,因为它们的原始代码使用的是
FOR/R
,这也是递归的。啊哈是的,在/b之后添加/S以转到所有子文件夹如果我已经知道只有一个匹配,是否可以直接将结果指定给变量,或者我仍然需要一个
用于循环?我之所以这么做是因为我曾经有过但不知道<代码>在哪里存在,我认为这会简化我的代码。对不起@derHugo,我没有习惯根据对20个月大的、未被接受的答案的评论向会员提供免费支持。