Команда if позволяет запускать конкретные команды только при выполнении определенных условий. Команда if является одним из основных требований реального языка программирования, и расширенная команда if, предоставляемая оболочкой CMD, делает язык пакетных файлов более полезным, чем во времена COMMAND. COM. В пакетных файлах команда if используется намного чаще, чем непосредственно в командной строке.
Основными форматами команды if являются if Условие команда Первая версия проверяет Условие и, если оно вычисляется в true, выполняет Команду. Если Условие не вычисляется в true, Команда игнорируется.
Вторая версия предоставляет вторую команду, которая запускается, если условие вычисляется в false. В этой версии в зависимости от условия запускается либо одна, либо другая команда. С помощью круглых скобок в операторе if можно сгруппировать несколько команд. Например, операторы if not exist input. dat ( проверяют факт существования файла input. dat и, если он не существует, запускают команды echoHdin. Группировка команд значительно упрощает чтение и написание пакетных файлов CMD по сравнению с DOS-форматом, где вместо всего этого пришлось бы написать: if exist
С группировкой команд можно воспользоваться условием else, применив для этого следующий формат: if Условие ( Тест вычисляется в tnue, если названный файл или каталог существует. Смысл может быть изменен на противоположный, если перед тестом поставить слово not. Для проверки существования каталога к концу имени этого каталога нужно добавить обратный слэш (). Например, команда if exist c:temp обнаружит существование каталога c:temp и не будет сбита с толку файлом по имени c:temp. строка1 оператор_сравнения строка2 Сравнивает две строки и возвращает результат сравнения. Если обе строки состоят только из цифр, выполняется числовое сравнение, в противном случае, выполняется сравнение по символам алфавита. Если используется ключ Тест вычисляется в true, если названная переменная среды окружения определена и не имеет пустого значения. Расширенный оператор if — одно из самых существенных улучшений CMD. В сочетании с переменными среды окружения вы получаете неплохой язык программирования.