CMD/BAT - [решено] Как в скрипт добавить строки на проверку, "Windows 10" ?

Ответить
Аватара пользователя
turbolover

CMD/BAT - [решено] Как в скрипт добавить строки на проверку, "Windows 10" ?

Сообщение turbolover »

Как в скрипт добавить строки на проверку, "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

Re: CMD/BAT - [решено] Как в скрипт добавить строки на проверку, "Windows 10" ?

Сообщение greg zakharov »

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

Re: CMD/BAT - [решено] Как в скрипт добавить строки на проверку, "Windows 10" ?

Сообщение mwz »

Цитата turbolover:



Так будет правильно?
CMD/BAT - [решено] Как в скрипт добавить строки на проверку, "Windows 10" ?




Вариантов много.

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





Код:

Код: Выделить всё

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
Ответить

Вернуться в «Скриптовые языки администрирования Windows»