“C:\Program” не является внутренней или внешней командой – как исправить

Если при запуске программы или скрипта вы видите ошибку

“C:\Program” не является внутренней или внешней командой, исполняемой программой или пакетным файлом

– не спешите паниковать 🙂
Эта ошибка встречается почти у всех, кто хоть раз пытался запустить .exe или .bat файл, лежащий в папке с пробелом в названии, например Program Files или Program Files (x86).

"C:\Program" не является внутренней или внешней командой

В этой статье разберём:

  • почему появляется ошибка,
  • как её исправить,
  • и что делать, если вы работаете через PowerShell или создаёте свой скрипт.

💡 Почему появляется ошибка “C:\Program не является командой”

Windows считает, что всё, что идёт до пробела, – это название команды.
Поэтому при вводе в консоли строки вроде:

C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\klmover.exe -address 192.168.204.3

командная строка думает, что нужно выполнить программу C:\Program, а остальное (Files (x86)\...) воспринимает как аргументы, что и вызывает ошибку.


✅ Правильный способ – заключать путь в кавычки

Чтобы Windows поняла, что весь путь – это один объект, его нужно взять в двойные кавычки:

"C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\klmover.exe" -address 192.168.204.3

📎 Теперь путь считается единым, и команда выполнится без ошибок.


🔧 Пример из практики (Kaspersky Security Center)

При переносе Kaspersky Security Center 10 на новый сервер нужно заново привязать агентов администрирования к новому IP-адресу.
Для этого на клиентских компьютерах запускается утилита klmover.exe, которая находится в папке с пробелами:

C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\

Если выполнить команду без кавычек, появится ошибка:

“C:\Program” не является внутренней или внешней командой, исполняемой программой или пакетным файлом.

А вот правильная команда:

"C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\klmover.exe" -address 192.168.204.3

После этого агенты успешно перепривяжутся к новому серверу.


🧠 Частые ошибки новичков

  1. Кавычки внутри пути
    Нельзя писать так: C:\"Program Files (x86)"\Kaspersky Lab\... Это не сработает. Кавычки должны охватывать весь путь, а не его части.
  2. ⚙️ Запуск из PowerShell
    В PowerShell кавычки тоже работают, но иногда путь нужно указывать с & перед ним: & "C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\klmover.exe" -address 192.168.204.3 Это особенно важно, если команда начинается с пути, а не с имени исполняемого файла в системных переменных.
  3. 🧩 Пробелы в именах переменных
    Если используете переменные, оборачивайте их тоже в кавычки: "%PROGRAMFILES(X86)%\Kaspersky Lab\NetworkAgent\klmover.exe"

🚀 Как избежать таких ошибок в будущем

  • Избегайте пробелов в путях, если создаёте свои каталоги для скриптов. Лучше использовать подчеркивания:
    C:\AdminTools\Kaspersky_Agent\
  • Если часто работаете через CMD – добавьте нужный путь в переменную PATH, чтобы не писать полный адрес.
  • В .bat-файлах всегда ставьте кавычки вокруг путей, особенно если скрипт будет использоваться другими людьми.

📹 Видео-инструкция

Для наглядности можно посмотреть короткое видео – там показано, как ошибка возникает и как её исправить всего за пару секунд.
(Видео будет добавлено позже, как только выйдет новая версия материала.)


🔗 Полезные материалы


🧰 Итого

Ошибка "C:\Program" не является внутренней или внешней командой – это не баг, а просто особенность работы Windows с пробелами в путях.
Исправляется элементарно: ставим кавычки вокруг полного пути и команда запускается без проблем.

ВидеоИнструкция


Виталий nibbl

Привет 👋 Меня зовут Виталий, в сети я известен как Виталий Nibbl. С 2009 года я в IT и люблю задачки, от которых у других опускаются руки. Если вам сказали, что - "это невозможно" — значит, вы просто ещё не обратились ко мне 😎 В моих блогах на YouTube и Telegram вы найдёте пошаговые инструкции и решения любых сложностей. А ещё я профессионально скачиваю видео с любых платформ и всегда на связи по IT-вопросам.

Оцените автора
NIBBL
    • 18.11.2017 12:54

    а что если я програмирую на ” C” в редакторе Sublime и также выбывает («C:\Program» не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.

    )

    Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Оценка

PROS

+
Add Pros

Cons

+
Add Cons