对多个目录运行目录

时间:2014-03-11 11:19:12

标签: windows cmd dir

如果我跑,例如:

dir /s /b /o:gn "c:\Program Files\TrueCrypt" | findstr .sys

我很舒服

c:\Program Files\TrueCrypt\truecrypt.sys
c:\Program Files\TrueCrypt\truecrypt-x64.sys

..作为回报。但是,如果我添加一个不存在的文件夹(我不会理解为什么会出现这种情况,但它会是这样),我只是得到一个错误:

dir /s /b /o:gn "c:\Program Files\TrueCrypt" "c:\non folder\non subfolder" | findstr .sys
The system cannot find the file specified.

与UNIX世界不同,我可以使用" find"并且它返回在任何目录中找到的文件,而不仅仅是对不存在的目录进行处理。

1 个答案:

答案 0 :(得分:0)

您可以使用循环并为每个文件夹调用dir

for %F in ("c:\Program Files\TrueCrypt" "c:\non folder\non subfolder") do (
  dir /s /b /o:gn "%F"
) | findstr .sys

但是,根据您的需要,您可以通过在此处放弃dirfindstr并选择循环文件来做得更好。但这取决于你的总体目标是什么。