本帖最后由 syqh2010 于 2015-3-4 00:24 编辑
文本内容如下:
.START A1 Clk Clr Data Q QB
CB Clk Vd Vd PM25 3 250n
CB Clk Vd Vd PM25 3 250n
、、此处省略500行
.ENDS A1
.START B1 v1p A B Out Obar Gn V
M1 1 B Gn 0 NM25 1.5 250n
M2 Ot A 0 NM25 1.5 250n
、、此处省略500行
.ENDS B1
提取以.START到.ENDS开头字母之间的段落,并以.ENDS之后的一个单词作为每个新文件的文件名。
参考老贴,用以下代码可以达到效果,但运行速度较慢。(我的文本行数内容较多,达2000行)
请行家给一个速度快一点的代码,达到一样的效果,谢谢!sed,纯批都行。- @echo off
- for /f "tokens=1*" %%a in ('type "a.txt"') do (
- if defined flag (
- if /i "%%a" == ".ENDS" (
- move $ "%%b.txt" & set "flag="
- ) else echo,%%a %%b>>$
- ) else if /i "%%a" == ".START" set flag=1
- )
- ::pause
复制代码 老贴见:
http://www.bathome.net/viewthrea ... &from=favorites |