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

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

sov44 10-07-2013 09:24 2182261

В переменную версию Windows
 
Подскажите, как вывести через findstr в переменную версию Windows

Iska 10-07-2013 10:34 2182305

Код:

@echo off
setlocal enableextensions enabledelayedexpansion

for /f "usebackq" %%i in (
        `wmic.exe OS get Version /value ^|find.exe /i "Version"`
) do set s%%i

if defined sVersion echo [%sVersion%]

endlocal
exit /b 0


sov44 10-07-2013 10:45 2182315

Iska, а можно получить версию с помощью регулярных выражений через команду ver, по аналогии с постом http://forum.oszone.net/thread-264063.html ?

Iska 10-07-2013 11:12 2182347

А что нам дадут регулярные выражения? Строка-то возвращается целиком.

Код:

@echo off
setlocal enableextensions enabledelayedexpansion

for /f "usebackq tokens=2 delims=[]" %%i in (`ver`) do for /f "tokens=2" %%j in ("%%~i") do set sVersion=%%j

if defined sVersion echo [%sVersion%]

endlocal
exit /b 0


sov44 10-07-2013 11:20 2182357

С циклом-то я без проблем выведу версию. Просто, увидев смежную тему, хотел получить ликбез по регулярным выражениям по разбору ver. :)

Iska 10-07-2013 11:50 2182380

sov44, ещё раз: «findstr.exe», как и «find.exe» — построчные фильтры. Вы можете с их помощью отобрать потребную строку среди прочих строк (в том числе и по регулярным выражениям — посредством первой). Но они не предназначены для извлечения частей строки.


Время: 16:39.

Время: 16:39.
© OSzone.net 2001-