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

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

turbolover 01-07-2016 13:12 2647140

Как в скрипт добавить строки на проверку, "Windows 10" ?
 
Как в скрипт добавить строки на проверку, "Windows 10" и направить в: ( GOTO Starter ).
Так будет правильно?
Код:

@Echo off
SET Version=Unknown
VER | FINDSTR /IL "10.0." > NUL
IF %ERRORLEVEL% EQU 0 SET Version="Windows 10.0"
echo.
echo.
IF %VERSION% == "Windows 10.0"  GOTO Starter
GOTO Unknown
:Starter
Start Explorer %Systemdrive%\Users\%Username%\AppData
goto end
:End


greg zakharov 01-07-2016 21:42 2647317

start? explorer?! %sys... Ммм, что-то явно пошло не так. Не, findstr можно и так применять, но чтобы бы через errorlevel, как-то однако. Может так будет длинней, но с точки зрения "попадания" версии правильней.
Код:

@echo off
  setlocal enabledelayedexpansion
    for /f "tokens=2 delims=[]" %%i in ('ver') do set "str=%%i"
    set "i=0"
    set "dot=0"
    :repeat
      set "c=!str:~%i%,1!"&set /a "i+=1"
      echo:%c%|>nul findstr /rc:"[0-9.]"&&(
        if /i "!c!" equ "." set /a "dot+=1"
        if !dot! equ 2 goto:next
        set "ver=!ver!!c!"
      )
      if "!c!" equ "" goto:next
      goto:repeat
    :next
    if /i "!ver!" equ "10.0" explorer /n,"%appdata%"
  endlocal
exit /b


mwz 01-07-2016 21:45 2647318

Цитата:

Цитата turbolover
Так будет правильно? »

Вариантов много.
У меня третья и четвёртая строка были бы (делал лет шесть назад, для более ранних версий, а сейчас проверил конкретно для десятки):

Код:

VER | FIND /I "10.0." > NUL
IF NOT ERRORLEVEL 1 SET Version="Windows 10.0"

Если переменная VERSION далее не нужна, то целиком скрипт может (опять же: вариантов много) её не использовать и выглядеть как:

Код:

@Echo off
VER | FIND /I "10.0." > NUL
IF ERRORLEVEL 1 GOTO Unknown
:Starter
REM с заменой длинного %Systemdrive%\Users\%Username% на то же самое, но короткое %USERPROFILE%
Start Explorer %USERPROFILE%\AppData
goto end
:Unknown
REM Строки добавить по вкусу
:End



Время: 08:45.

Время: 08:45.
© OSzone.net 2001-