Board logo

标题: [求助]如何截取文本文件中的变量 [打印本页]

作者: lealawer     时间: 2010-11-19 09:38    标题: [求助]如何截取文本文件中的变量

在cmd下dos中执行命令,对话框显示如下:同时存成文本文件到e:\22\99.txt
LCD Extended Status Utility

Status:  Opening the LCD device
Status:  LCD-C detected, bcdDevice 0x1
LCD Info: Model 0 Panel 8
LCD Info: USB FW Ver 1.1 GFX Ver 1.3 USB Boot Ver 1.0 GFX ISP 1.0
LCD X Status: Temp Now 28 Min 20 Max 44
LCD X Status: 5V PS 5.0 3.3V PS 3.3 Inverter Status 0x7f DVI Status 0x1
LCD X Status: Serial # 93051251 Minutes of Operation 485
LCD X Status: ResetReason 0x3 Inactivity 0 Activity 136 BadReadCount 0

请教如何把对话框或文本文件中第7行中的温度28值截取出来,赋值给A,然后就能对A进行比较和判定
作者: huahua0919     时间: 2010-11-19 11:58

@echo off

if not exist e:\22 (md e:\22)
type a.txt >e:\22\99.txt&echo.文本保存成功&type a.txt
for /f "tokens=1* delims=:" %%a in ('findstr /n .* a.txt') do (
        if %%a equ 7 (
                for /f "tokens=6" %%i in ("%%b") do (
                        Set A=%%i
                )
        )
)
echo.
echo.
echo.
echo/变量A的值为:%A%
pause>nul

作者: lealawer     时间: 2010-11-19 12:22
还是看不懂,简单点,就是在E:\DB\Temp.txt的内容如下:
LCD Extended Status Utility

Status:  Opening the LCD device
Status:  LCD-C detected, bcdDevice 0x1
LCD Info: Model 0 Panel 8
LCD Info: USB FW Ver 1.1 GFX Ver 1.3 USB Boot Ver 1.0 GFX ISP 1.0
LCD X Status: Temp Now 28 Min 20 Max 44
LCD X Status: 5V PS 5.0 3.3V PS 3.3 Inverter Status 0x7f DVI Status 0x1
LCD X Status: Serial # 93051251 Minutes of Operation 485
LCD X Status: ResetReason 0x3 Inactivity 0 Activity 136 BadReadCount 0

如何把里面的temp now后面的28(可变量)截取出来,赋值给A
作者: lealawer     时间: 2010-11-22 09:22
大师们,有没有办法啊?
作者: lealawer     时间: 2010-11-24 10:58
已经做出来了,代码如下:
IF EXIST A.TXT DEL A.TXT
type e:\db\tempA.txt|find "Temp Now">A.txt
for /f "tokens=6" %%i in (A.txt) do (
        set A=%%~ni
)