batch:如何将dir输出传递给findstr?

时间:2017-03-12 15:32:57

标签: batch-file

我想在没有使用 / f 选项的情况下使用文件名提供 findstr ,我的脚本是这样的:

@echo off
for /d /r %%d in (.) do dir /b /a-d "%%d"

我想检查dir命令显示的每个文件中是否存在特定的字符串。

谢谢

1 个答案:

答案 0 :(得分:2)

您要查找的是选项/F及其特殊值/,它会从控制台而不是文件中读取要搜索的文件列表:

for /D /R %%d in (.) do dir /B /A:-D "%%d" | findstr /F:/ "search strings"

由于您只是使用for循环来返回目录树,因此您只需将/S添加到dir命令并完全解除循环:

dir /B /S /A:-D | findstr /F:/ "search strings"