batch-file - 从日志文件批处理中的一行中提取部分字符串
问题描述
需要从日志文件的一行中提取部分字符串。我想读取日志文件中的条目,这是一个示例:
Thu 08/29/2019 10:46:43.22 setup.bat USB REIMAGE - WinPE reimage of .wim END
我只想提取日期、日期和时间
我试过 for 循环来提取它并没有帮助我
For /F "UseBackQ Delims==" %%A In ("R:\reimage.log") Do Set "lastline=%%A"
IF "%lastline%" == "USB REIMAGE - WinPE reimage of"(
set lastline=!line:~0,4!
echo "The last reimage performed by installer was on %lastline%"
pause
)
解决方案
我在评论中给出的示例是展示我们如何使用令牌。这样的事情应该做你想做的事:
@echo off
for /f "tokens=1-3" %%i in ('type R:\reimage.log ^| findstr /I "USB REIMAGE - WinPE"') do echo %%i %%j %%k
推荐阅读
- java - TabLayout 迁移到 AndroidX
- python - 如何在python中的zip文件夹中创建文件?
- c++ - 如何在 Cython 中链接嵌套的 C++ 库
- javascript - 使用 laravel 中的 db 数据更改 tui-calender 中的数据
- reactjs - ReactJS D3 - 如何放大 D3 地理世界地图
- python - 如何在python中水平堆叠两个矩阵
- java - 使用 Maps Elevation API
- php - 在特定列上使用条件验证 Laravel
- angular - 在方法中动态获取组件并以角度设置其属性
- javascript - 类型错误:this.props.* 不是函数