日志文件处理-bat
log.txt
内容如下:
8:30
12
12
234
error
slkjdf
sd
9:30
10:00
sdkfj
asdflkj
error
alskjfd
10:30
需求:
写一个带参的test.bat实现以下功能:
在 10:00 和 10:30之间 查找 error
如果有 -〉 给系统返回正确
如果没有 -> 给系统返回错误
调用形式 call test.bat log.txt 10:00 10:30
[解决办法]
- VBScript code
@echo offfor /f "delims=:" %%a in ('findstr /n "%~2" "%~1"') do (set ts=%%a)for /f "delims=:" %%a in ('findstr /n "%~3" "%~1"') do (set te=%%a)for /f "delims=:" %%a in ('findstr /inx "error" "%~1"') do ( if %%a gtr %ts% (if %%a lss %te% (echo 正确&goto :eof) else (echo 错误&goto :eof)))echo 错误