批处理BAT查找TXT问中特征字符
来源:百度知道 编辑:UC知道 时间:2024/05/12 11:31:06
我的TXT文本如下:
---------------------- (这里是特征字符)
A (这里是特征字符下的第1行)
B (这里是特征字符下的第2行)
C (这里是特征字符下的第3行)
D ....................4
E ....................5
---------------------- (这里是特征字符)
F (这里是特征字符下的第1行)
G (这里是特征字符下的第2行)
以此类推......
要求:
1,查找文本中的特征字符(特征字符可自定义)
2,提取特征字符下第N行的数据写到新的TXT中(N可以自定义,例如N取2就是特征字符下第2行数据,第N行的数据允许为空)
3,可定义查找多少行数据,例如100行,当查找到100行时停止,或者当查找不到特征码时停止,这样避免死循环.
谢谢,新人,积分不多,为表感谢.10分....
---------------------- (这里是特征字符)
A (这里是特征字符下的第1行)
B (这里是特征字符下的第2行)
C (这里是特征字符下的第3行)
D ....................4
E ....................5
---------------------- (这里是特征字符)
F (这里是特征字符下的第1行)
G (这里是特征字符下的第2行)
以此类推......
要求:
1,查找文本中的特征字符(特征字符可自定义)
2,提取特征字符下第N行的数据写到新的TXT中(N可以自定义,例如N取2就是特征字符下第2行数据,第N行的数据允许为空)
3,可定义查找多少行数据,例如100行,当查找到100行时停止,或者当查找不到特征码时停止,这样避免死循环.
谢谢,新人,积分不多,为表感谢.10分....
@echo off&setlocal enabledelayedexpansion
for /f "tokens=1-2 delims=[]" %%i in ('type b.txt^|find /n "---"') do (
set %%i=num
if %%i GTR 0 (
set /a var=%%i+1
set !var!=nm
)
)
for /f "tokens=1-2 delims=[]" %%a in ('find /n "@" "b.txt"') do (
set %%a=ml
)
for /f "tokens=1-2 delims=[]" %%a in ('type b.txt^|find /n /v ""') do (
set var=%%b
if defined %%a (
echo %%b)
)
pause>nul