如何使用批处理脚本读取文本文件

时间:2017-05-17 16:23:01

标签: batch-file batch-processing

我想使用批处理脚本读取文本文件, 我有一个包含一些数据的日志文件,我想从该文本文件中读取BUILD编号并显示。

示例:构建:2016.17.05_0872

有没有办法像这样阅读?

<span class="label" :class="'label-' + account.Segment">{{account.Segment}}</span>

这是我到目前为止所做的,它只是在文件中搜索该词。

4 个答案:

答案 0 :(得分:0)

根据您提供的有限信息我的最佳猜测,这是一个选项:

我猜你的FileName.txt看起来有点像这样:

This is the first line
Name:MyProject Build:2016.17.05_0872 Author:Jacob
There are other words on this line

...你想要输出:

2016.17.05_0872
@Echo Off
SetLocal EnableExtensions DisableDelayedExpansion

Set "srcFile=FileName.txt"
Set "srcTerm=Build:"

For /F "Delims=" %%A In ('FindStr/LIC:"%srcTerm%" "%srcFile%" 2^>Nul') Do (
    Set "_=%%A"
    SetLocal EnableDelayedExpansion
    For /F %%B In ("!_:*%srcTerm%=!") Do Echo=%%B
    EndLocal)

Timeout -1
EndLocal
GoTo :EOF

只需更改第4行的文件名即可与您要搜索的实际文本文件名相匹配。

答案 1 :(得分:0)

你的问题不明确,所以我会尽力完成。

如果您有这样的文本文件:

First line
Build:2016.17.05_0872
Other line

...你想要输出这一行:

2016.17.05_0872

...然后这个批处理文件解决了您的问题:

@echo off
for /F "tokens=2 delims=:" %%a in ('findstr "Build" textFile.txt') do echo %%a

答案 2 :(得分:-1)

在Windows中(“批处理”听起来像Windows),您可以使用:

find /I "build" *.log

答案 3 :(得分:-2)

您只需使用grep

即可
grep "BUILD" filename.txt