[Командная строка]
О чем вам не расскажет if /?
или особенности использования операторов сравнения в конструкциях IF

Опубликовано 15 марта 2010.

Тот кто хоть раз писал в командном файле строку:

if %a% eql %b% (echo а равно b)

Знает о чем я. Я о радостном сообщении “Непредвиденное появление eql“.

Вот тут и кроется все коварство M$, оператор IF кочует из версии в версию операционных систем M$ уже много лет, однако работникам MicroSoft все как-то не досуг поправить ошибки в справке.

> if /?
Оператор условного выполнения команд в пакетном файле.

Изменение команды IF при включении расширенной обработки команд:

IF [/I] строка1 оператор_сравнения строка2 команда
IF CMDEXTVERSION число команда
IF DEFINED переменная команда

где оператор_сравнения принимает следующие значения:

EQL EQU - равно
NEQ - не равно
LSS - меньше
LEQ - меньше или равно
GTR - больше
GEQ - больше или равно