如何使用Windows批处理文件查找特定目录?

时间:2016-10-20 22:45:50

标签: windows batch-file command-line command-prompt

我有一个批处理文件,可以在路径

中找到最后修改过的目录
for /f "delims= %%x in (' dir / ad /od /b "C:\Path") do set newest=%%x

我需要修改此脚本以仅查找某些文件夹并找到最后修改过的文件夹。例如,如果路径包含4个目录(红色,蓝色,绿色,黄色),我想让命令只查找2个目录(蓝色,绿色),并找到最新修改的目录。

2 个答案:

答案 0 :(得分:1)

for /f "delims=" %%x in (
  'dir / ad /od /b "C:\Path" ^| Findstr /i "Blue Green" '
    ) do set newest=%%x

将以or方式过滤行中任何位置的所有包含蓝色或绿色的行。

答案 1 :(得分:1)

使用这样的目录名称,你甚至可以在没有findstr的情况下离开:

@ECHO OFF
FOR /F "DELIMS=" %%A IN ('DIR/B/AD-L/OD "C:\PATH\B?UE" "C:\PATH\GR?EN"') DO (
    SET "NEWEST=%%A"
SET NEWEST
PAUSE