批处理查找指定log文件里面的指定内容后面的8个数字建一个文件夹

有一个log文件, 文件名为 123,下面是这个log文件里面的部份内容: System name: COMPACT EMB.PC Celeron/Pentium4 System S/N: 5978005115 (解释:这一行在大约40行) Board manufacturer: PCP Board name: I845GV-P195+.............我想用批处理去找查 System S/N: 后面的序列号 5978005115 ,然后用这个序列号建一个文件,由于DOS下好象只支持8个字符文件名,所以这个序列号可以取后8位,请哪位高手指教..非常感谢!不好意思是,用这个序列号建一个文件夹,谢谢!
2026年09月27日 18:04
有2个网友回答
网友(1):

@echo off
for /f "tokens=3 delims=: " %%a in ('type 123.log^|findstr /i /c:"System S/N:"') do (
if not exist %%a\ md %%a
explorer %%a
)

下面是8位的

@echo off & setlocal EnableDelayedExpansion
for /f "tokens=3 delims=: " %%a in ('type 123.log^|findstr /i /c:"System S/N:"') do (
set wkdxz=%%a
md !wkdxz:~-8,8! >nul 2>nul
explorer !wkdxz:~-8,8!
)

网友(2):

@echo off
setlocal enabledelayedexpansion
for /f "tokens=3 delims= " %%i in ('type 123.log^|find "System S/N"') do (
set s=%%i
set s=!s:~-8!
if not exist !s! md !s!
)