Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Сравнение значений (http://forum.oszone.net/showthread.php?t=197706)

Fresh96 26-01-2011 13:59 1597621

Сравнение значений
 
Здравствуйте. Подскажите пожалуйста.
Есть файл следующего содержания:

Цитата:

....
version=5307 (20100723)
versionid=5307
build=7529
type=engine
size=24250482
[ENGINE1]
version=5704 (20101215)
versionid=5704
build=8355
....
нужно выделить в нем самое большее значение versionid / строк versionid много /
и записать это самое большое значение в переменную.

пока написал только такой код /новичек/:
Код:

FOR /f "tokens=2 delims== " %%i in ('findstr /C:"versionid" update.ver') do echo %%i

gora 26-01-2011 14:15 1597632

Код:

@Echo Off
SetLocal enabledelayedexpansion
Set maxver=0
For /f "tokens=2 delims== " %%i In ('findstr /C:"versionid" update.ver') Do If %%i GTR !maxver! Set maxver=%%i
Echo maxver=!maxver!
Pause>Nul


Ivan Bardeen 26-01-2011 15:25 1597680

Укажите в тексте скрипта расположение вашего текстового файла (выделено жирным) - результат(значение переменной "i") выведется на экран в окне
это vbs скрипт

Код:

Const ForReading = 1
i = 0
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("c:\temp\update.ver", ForReading)

Do Until objTextFile.AtEndOfStream
    strNextLine = objTextFile.ReadLine
      If Left(strNextLine,9) = "versionid" Then
                      strNextLine = Mid(strNextLine,11)
                      strNextLine = CInt(strNextLine)
                      If strNextLine > i Then
                              i = strNextLine
                      End If
      End If
Loop
Wscript.Echo i



Время: 14:52.

Время: 14:52.
© OSzone.net 2001-