[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 terse 于 2013-10-24 15:20 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%i in ('dir /b/a-d *.txt') do (
  3.     set "flag="
  4.     for /f "usebackqtokens=1*" %%a in ("%%i") do (
  5.        if defined flag (
  6.             if /i "%%a" == "AVGE" (
  7.                for /f "tokens=*" %%c in ("!var: =\!\!str: =\!\..") do echo %%~nxc
  8.                set "flag="
  9.             ) else set "var=!str!"
  10.         ) else if /i "!str: =!" == "D11Finalseasonallyadjusteddata" set flag=1
  11.           set "str=%%a%%b"
  12.     )
  13. )
  14. pause
复制代码
1

评分人数

TOP

回复 29# inflikt

AVGE 上面目标行只存在一列的时候不够了, 只能再从上面借一行了 修正下试

TOP

回复 33# tmplinshi
这样是否省点空间呢
  1. sed -nr "/D\s*11\s*Final seasonally adjusted data/I,/AVGE/I{/AVGE/I{x;s/^.* ([0-9.]+)\s+[0-9.]+.*$/\1/p;d;x};H}" *.txt
复制代码
1

评分人数

TOP

返回列表