PDA

Показать полную графическую версию : [решено] set /p отключить регистр


vngreez@vk
18-06-2017, 21:14
Такс... Задача такая
Делаю диалог с вариантами Да

Часть кода:
set Yes=yes
set Y=y
set /p select=Хотите продолжить? [%Yes% / %Y%]:
if not %select%==%Yes% (
if not %select%==%Y% exit
)

Весь косяк в том что тут учитывается регистр, мне надо отключить его, есть возможные варианты?

Пример:
YES не равен yes, а должен быть равны
также Y должен быть равен y

greg zakharov
18-06-2017, 21:32
if /i "%select%" equ "YES" echo:Ahtung, das ist Zhopa!

Iska
18-06-2017, 21:38
YES не равен yes, а должен быть равны »
Не должны. Чтобы стали должны — делайте, как указал выше коллега:
if /i "%select%" equ "YES" »

alpap
19-06-2017, 01:10
vngreez@vk,
или же можно уйти от регистра:

@echo off
echo ------------------
echo Продолжить - 1
echo Не продолжать - 2
echo ------------------
:st
echo Хотите продолжить?
set /p select=
if %select%==1 echo Продолжаем
if %select%==2 echo Не продолжаем& goto st
pause

Iska
19-06-2017, 01:36
Тогда уж сразу choice.exe ;).

alpap
19-06-2017, 08:44
choice.exe »
двумя руками за, но обладатели XP, коих немало еще (к сожалению) пролетают.

Iska
19-06-2017, 08:49
Это да.

Опиум
19-06-2017, 10:12
да и как я гдето писал выше, choice разных версий имеет разный синтаксис.

Iska
19-06-2017, 10:23
Угу. Потому вот так посмотришь-посмотришь, да и выберешь WSH, который практически неизменен (внешние отличия в 5.6, 5.7, 5.8 минимальны) от тайги до британских морей от Windows 2000 до Windows 10 :) (понятно, что набор доступных библиотек Automation всё равно будет частично различаться).




© OSzone.net 2001-2012