2013-03-26 14:04:23 +0000 2013-03-26 14:04:23 +0000
10
10

Wiersz poleceń systemu Windows: "nie jest rozpoznawany jako wewnętrzne lub zewnętrzne polecenie, program operacyjny lub plik wsadowy".

Kiedy uruchamiam cmd w Windows 7 (wpisując 'cmd' w Windows Run), pojawia się następujący błąd:

‘-p’ nie jest rozpoznawane jako wewnętrzne lub zewnętrzne polecenie, program operacyjny lub plik wsadowy.

Próbowałem sprawdzić PATH w zmiennych środowiskowych. Uruchomienie echo %PATH% daje mi następujące wyniki:

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

Sprawdziłem wszystkie katalogi wskazywane przez PATH. Wszystko wydaje się być na swoim miejscu. To, czego nie mogę zrozumieć, to gdzie '-p' jest wywoływane. Myślę, że ma to coś wspólnego z cmd, ponieważ pojawia się tylko wtedy, gdy wywołuję cmd, a nie kiedy uruchamiam ipconfig lub ping, na przykład.

Odpowiedzi (1)

12
12
12
2013-03-26 14:13:28 +0000

Możliwe, że masz ustawione polecenie ‘AutoRun’ w rejestrze. Istnieją dwa klucze rejestru, jeden dla użytkownika i jeden dla komputera, które mogą definiować polecenia, które są uruchamiane przy każdym uruchomieniu procesora poleceń (cmd.exe). W rzeczywistości są one wymienione w cmd /?.

W każdym razie, spróbuj uruchomić cmd /d i zobacz, czy da to ten sam komunikat. Flaga /d oznacza “nie uruchamiaj poleceń AutoRun”, co czyni ją idealną do testowania tego.

Wartości w rejestrze to:

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

Sprawdź obie. Domyślnie żadna z nich nie powinna istnieć. Możesz chcieć poprawić ciągi poleceń w swoim lub nawet całkowicie je usunąć.

Powiązane: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


Ewentualnie możesz mieć ustawiony skrypt wsadowy lub podobny o nazwie cmd, który jest wykonywany zamiast natywnego cmd. Wypróbuj polecenie where cmd, aby wydrukować listę cmd w twojej ścieżce, w kolejności wykonywania. Jeśli są jakieś inne niż/przed tą w C:\Windows\System32\cmd.exe, możesz chcieć je usunąć, lub usunąć ich ścieżkę z twojej zmiennej środowiskowej PATH.