Что такое формат файла CMD?
Файл .cmd - это текстовый командный сценарий Windows NT, выполняемый cmd.exe, интерпретатором командной строки Windows. Он почти идентичен старому формату пакетных файлов .BAT, но с одним важным отличием в поведении: файл .cmd всегда запускается с включенными расширениями команд, что дает доступ к улучшенному синтаксису IF/FOR, подпрограммам CALL :label, расширениям путей %~nx0 и надежной обработке ERRORLEVEL - без необходимости настройки реестра.
Расширение .cmd, представленное в 1993 году в Windows NT 3.1 вместе с новым интерпретатором cmd.exe, было способом Microsoft отличить нативные сценарии NT от устаревших файлов .bat для DOS, которые работали под управлением COMMAND.COM. Оба расширения по-прежнему полностью поддерживаются вплоть до Windows 11.
Сценарий .cmd состоит из последовательных команд cmd.exe, меток (:name), ключевых слов управления потоком (GOTO, CALL, IF, FOR) и подстановок переменных (%VAR%). Блоки SETLOCAL/ENDLOCAL изолируют изменения переменных среды в рамках сценария. «Магические байты» отсутствуют - файл представляет собой обычный текст, обычно сохраняемый в кодировке ANSI/Windows-1252; UTF-8 поддерживается, но маркер последовательности байтов (BOM) в начале может нарушить работу первой командной строки.
Файлы .cmd являются исполняемыми: двойной клик немедленно запускает все команды. Всегда проверяйте подозрительный файл .cmd в текстовом редакторе перед запуском. Для современной автоматизации в Windows предпочтительны сценарии PowerShell (.ps1), хотя .cmd остается незаменимым для устаревших систем и легкой автоматизации задач.
Безопасность и защита
РИСК: HIGHФайл .cmd является ИСПОЛНЯЕМЫМ: двойной клик немедленно запускает каждую команду с вашими пользовательскими привилегиями. Он может удалять или шифровать файлы, изменять системные настройки, загружать дополнительное вредоносное ПО, отключать средства защиты или похищать данные. Это стандартный формат доставки вредоносных программ, часто замаскированный под «исправление», «установщик», «оптимизатор» или «активатор», и обычно рассылаемый в виде вложений электронной почты или загружаемый с поддельных страниц поддержки. БЕЗОПАСНОЕ ОБРАЩЕНИЕ: никогда не запускайте двойным кликом подозрительный файл .cmd. Чтобы проверить его, щелкните правой кнопкой мыши > Показать дополнительные параметры > Изменить (откроется в Notepad без выполнения). Ищите следующие «тревожные флажки»: команды, вызывающие powershell/curl/bitsadmin/certutil для загрузки файлов, строки в кодировке base64, попытки отключить Windows Defender или UAC, запись в папки AppData/system или длинные обфусцированные строки с символами вставки (^). Если сомневаетесь, загрузите файл на VirusTotal (это текстовый файл, его загрузка безопасна) и запускайте его только внутри виртуальной машины или песочницы. Примечание: файлы .cmd от известных программ (оболочки Gradle, Maven, Node.js) безопасны, но их все равно следует получать из официальных дистрибутивов, а не со сторонних сайтов.
Детали формата
в двух словахПрограммы, открывающие файлы CMD
Технические подробности
глубокая спецификация| Кодировка | Текст - обычно ANSI/Windows-1252 или ASCII; UTF-8 поддерживается, но BOM в начале может нарушить первую команду |
| Контейнер | Обычный текст |
| Шифрование | Отсутствует (обычный текст; нет встроенной подписи кода, в отличие от сценариев PowerShell .ps1) |
| Типичный размер | 100 байт - 100 КБ |
| Структура | Последовательные команды cmd.exe, метки (:name), управление потоком IF/FOR/GOTO/CALL, подстановки %VAR%, блоки SETLOCAL/ENDLOCAL |
| Расширения команд | Всегда включены в файлах .cmd (в отличие от .bat, где это зависит от настройки реестра EnableExtensions) |
| Интерпретатор | cmd.exe (не устаревший COMMAND.COM, используемый для файлов .bat в DOS) |
| Магические байты | Отсутствуют - обычный текст; многие файлы начинаются с @echo off, REM или :: (строка комментария) |
| Связанная ОС | Windows NT 3.1 и все более поздние версии, включая Windows 11 |
| Заменен на | PowerShell (.ps1) для современной автоматизации; .cmd и .bat остаются полностью поддерживаемыми в Windows 11 |
| Поведение при исполнении | Двойной клик немедленно запускает все команды; всегда проверяйте в текстовом редакторе перед запуском ненадежных файлов |
| Выпущен | 1993 with Windows NT 3.1 / OS/2 as the NT-era sibling of the DOS .bat extension |
| Последняя версия | No versioned spec; behavior defined by the cmd.exe of each Windows release (Windows 11 as of 2026) |
| Спецификация | learn.microsoft.com |
Конвертации CMD
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах CMD.