web-dev-qa-db-fra.com

Ligne de commande Windows: "non reconnu comme une commande interne ou externe, un programme utilisable ou un fichier de commandes."

Lorsque j'exécute cmd dans Windows 7 (en tapant 'cmd' dans Windows Run), le message d'erreur suivant s'affiche:

enter image description here

'-p' n'est pas reconnu comme une commande interne ou externe, un programme utilisable ou un fichier de commandes.

J'ai essayé de vérifier PATH dans les variables d'environnement. Lancer echo %PATH% me donne les informations suivantes:

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

J'ai vérifié tous les répertoires pointés par PATH. Tout semble être en place. Ce que je ne peux pas comprendre, c’est où on appelle '-p'. Je pense que cela a quelque chose à voir avec cmd puisqu'il n'est publié que lorsque j'appelle cmd et non pas lorsque je lance ipconfig ou ping, par exemple.

10
nmenego

Il est possible que vous ayez une commande 'AutoRun' définie dans le registre. Deux clés de registre, une par utilisateur et une par ordinateur, permettent de définir des commandes à exécuter à chaque démarrage du processeur de commandes (cmd.exe). Ils sont en fait répertoriés dans cmd /?.

Quoi qu'il en soit, essayez d'exécuter cmd /d et voyez si cela produit le même message. L'indicateur /d signifie "ne pas exécuter les commandes d'exécution automatique", ce qui le rend parfait pour tester cela.

Les valeurs de registre sont:

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

Vérifiez les deux. Par défaut, ni devrait exister. Vous voudrez peut-être réparer les chaînes de commande dans le vôtre, voire les supprimer complètement.

Connexes: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


Vous pouvez également avoir un script de traitement par lots ou similaire configuré avec le nom cmd, qui est en cours d'exécution à la place de cmd natif. Essayez la commande where cmd pour imprimer une liste de cmds dans votre chemin, dans l'ordre d'exécution. S'il existe des éléments autres que/avant celui de C:\Windows\System32\cmd.exe, vous pouvez les supprimer ou supprimer leur chemin de votre variable d'environnement PATH.

11
Bob