[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%f in ('dir /b /a-d *.txt') do (
  3.      set "exc="
  4.      for /f "usebackq tokens=*" %%i in ("%%f") do (
  5.           if defined exc (
  6.                for /f "tokens=2,3delims==" %%a in ("%%i") do (
  7.                     if "%%b" neq "" (
  8.                          for %%A in ("%%a" "%%b") do (
  9.                               for /f %%c in (%%A) do set "exc=!exc! %%c"
  10.                          )
  11.                     ) else (
  12.                          echo !exc!
  13.                          set "exc="
  14.                     )
  15.                )
  16.           )
  17.           if /i "%%~xni" == "excluding mass coefficients" (set exc=%%~nf)
  18.      )
  19. ))>out.txt 2>nul
  20. pause
复制代码

TOP

回复 6# meiszp
是固定的第五行吗

TOP

回复 12# meiszp
不通用,仅针对样本写的
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1,2*delims=:" %%i in ('"findstr /n . *.txt|findstr /c:"txt:5:" /c:"excluding mass coefficients""') do (
  3.      if defined _%%i (set $%%i=%%j) else for /f %%k in ("%%k") do set "_%%i=%%~xnk"
  4. )
  5. (
  6.      for /f "tokens=1,2,4,6*delims=:=[" %%a in ('findstr /inrc:"\<MAIN .*\[NS*/M\]$"  *.txt') do (
  7.           if %%b gtr !$%%a! (
  8.               if !num! == !_%%a! (
  9.                   if defined str (set str=!str! %%c %%d)else set str=!num! %%c %%d
  10.               ) else echo;!str: =!&set num=!_%%a!&set str=!num! %%c %%d
  11.           ) else if not defined num set num=!_%%a!
  12.      )
  13.      echo;!str: =!
  14. )>out.log
  15. pause
复制代码
1

评分人数

TOP

返回列表