Командний рядок Windows: "не розпізнається як внутрішня чи зовнішня команда, функціонуюча програма чи пакетний файл."


10

Коли я запускаю cmd в Windows 7 (набравши 'cmd'в Windows Run), з'являється така помилка:

введіть тут опис зображення

'-p' не розпізнається як внутрішня чи зовнішня команда, функціонуюча програма чи пакетний файл.

Я спробував перевірити PATH в змінних середовища. Біг echo %PATH%дає мені таке:

C: \ Windows \ System32; C: \ Windows; C: \ Windows \ System32 \ WindowsPowerShell \ v1.0; C: \ xampp \ php;

Я перевірив усі каталоги, на які вказує PATH. Начебто все на місці. Те, що я не можу зрозуміти, це те, куди '-p'дзвонять. Я думаю, що це має щось спільне, cmdоскільки воно виходить лише тоді, коли я дзвоню, cmdа не коли я бігаю ipconfigабо ping, наприклад.


Як ви запускаєте 'cmd'? Ви виконуєте ярлик або набираєте 'cmd' у вікні пошуку?
Саймон

@Simon, я запускаю його за допомогою Windows Run. Я оновив питання.
nmenego

перевірте кожен із каталогів, перелічених там у вашому PATH, на cmd. * - можливо, це дасть підказку
StevenV

У цього хлопця: stackoverflow.com/questions/10077689/… було місце перед a; у констатації шляху.
edelwater

@edelwater Трохи інший випадок там; той хлопець намагався запустити програму під назвою R, яка повинна була бути на його шляху, але не була, через цю помилку. У цьому випадку командний процесор ( cmd) сам викликає помилку при запуску - і запуск був успішним. Але проблема, яка її спричинила, може бути однаковою; Я не знижую це ...
Боб

Відповіді:


12

Можливо, у вас в реєстрі встановлена ​​команда "AutoRun". Є два ключі реєстру, один на користувача та один на комп'ютер, який може визначати команди, які виконуються кожного разу при запуску командного процесора ( cmd.exe). Вони фактично перераховані в Росії cmd /?.

У будь-якому випадку, спробуйте запустити cmd /dі побачити, чи створює це те саме повідомлення. В /dозначає прапор «не запускати команди автозапуску», що робить його ідеальним для тестування це.

Значення реєстру:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun

Перевірте обидва. За замовчуванням це не повинно існувати. Ви можете виправити рядки команд у ваших або навіть повністю видалити їх.

Пов'язане: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


Крім того, у вас може бути пакетний скрипт або подібне налаштування з іменем cmd, яке виконується замість рідного cmd. Спробуйте команду where cmdроздрукувати список cmds на своєму шляху, в порядку виконання. Якщо є інші, ніж / перед тим, хто входить C:\Windows\System32\cmd.exe, ви можете видалити їх або видалити шлях із змінної середовища PATH.


Я спробував виконати, cmd /dі, як очікувалося, проблеми не було. Потім я перевірив реєстр, і виявив HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRunкілька командних рядків щодо ANSICON. Я не зміг її видалити востаннє, коли я його видалив. Я просто зняв ключ! Це геніальна відповідь!
nmenego
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.