2014-10-06 4 views

ответ

1

Используйте этот код

SET "con1=n" 
SET /p "con1=----Do you want to display some text (y/n)? " 
SET "con1=%con1:"=%" 
IF /I "%con1%"=="y" (echo hi) 

Вы забыли знаки процента ссылаться на значение переменной con1. Поэтому ваш IF сравнивает фиксированную строку con1 с фиксированной строкой y, которые никогда не равны.

Сравнение в настоящее время не чувствительно к регистру из-за параметра /I.

Значение по умолчанию задано в случае, если пользователь просто нажимает enter в приглашении.

И последние двойные кавычки удаляются из введенного значения в случае пользователь вводит один или более " вместо того, чтобы просто y или n в противном случае выполнение пакетного сломается на линии с IF условие из-за синтаксической ошибки.