文件夹名称包含2个序列号的文件夹。我想获取所有文件夹名称并选择最大HF
R100_20170501_HF300_check1234
R200_20170621_HF122_TEST1234
R200_20170622_HF123_DF_25439
R300_20170622_HF99_DF_25439
基本上我想在HF和下划线之间使用MAX HFXXX_ - 在这种情况下返回300.
答案 0 :(得分:1)
@echo off
setlocal enabledelayedexpansion
set max=0
for /f "delims=_F tokens=4" %%a in ('dir R* /b /ad') do if %%a gtr !max! set max=%%a
dir /b /ad *_HF%max%_*
此脚本会检查所有文件夹,并在前三个下划线或F后保留编号最大的文件夹。这意味着如果在HF之前文件名中有F的可能性,它将无法可靠地工作。
答案 1 :(得分:1)
在" _HF"之后解析数字。并找到最大值。
from django.utils.log import DEFAULT_LOGGING
DEFAULT_LOGGING['handlers']['console']['filters'] = []
答案 2 :(得分:0)
我决定将其包括在内,以涵盖未来读者更喜欢非PowerShell解决方案。
@ECHO OFF
FOR /D %%A IN ("*_HF*_*") DO CALL :SUB "%%A"
ECHO [%MAX%]
PAUSE
GOTO :EOF
:SUB
SET "$=%~1"
IF "%XXX%" GTR "%MAX%" SET "MAX=%XXX%"
SET/A "XXX=%$:*_HF=%" 2>NUL
GOTO :EOF