Où sont les fichiers de commandes d'invite Windows standard?


20

Si je tape dirdans la ligne de commande, je suppose qu'il exécute un dir.execaché quelque part dans le système. Existe-t-il un tel fichier? Où est-ce?


1
Techniquement, le fichier l'est cmd.exe, bien qu'il ne soit pas vraiment exécuté; c'était déjà le cas. ;-)
Synetech

Réponses:


10

Direst une commande interne, comme cd, copy, et call. Il s'agit simplement d'un sous-programme de l'interpréteur DOS que vous appelez.

Il existe cependant des commandes externes . Ceux-ci résident généralement dans C:\Windows\ C:\Windows\System\ C:\Windows\System32et (si vous avez des fenêtres 64 bits)C:\Windows\SysWOW64\

Cependant, les commandes externes ne sont pas limitées à ces emplacements. Les commandes externes peuvent être appelées à partir du répertoire à partir duquel vous travaillez. (dans un shell DOS récemment démarré sur Windows 7, ce serait généralement le cas C:\Users\YourUsername\). Les commandes externes d'autres répertoires peuvent également être appelées, tant que le répertoire dans lequel elles se trouvent est dans votre PATHvariable d'environnement. Pour voir quels répertoires se trouvent sur votre chemin, utilisez SET PATH.

Si vous avez besoin d'un utilitaire à partir d'un répertoire, mais que vous devez parcourir d'autres répertoires, vous pouvez ajouter le dossier de l'utilitaire à l' PATHaide de SET PATH=%PATH%;DriveLetter:\Utility\Path\Here\. Cette modification affecte uniquement cette fenêtre DOS.

J'espère que c'est une connaissance nouvelle et utile!


37

dir est une commande MS-DOS interne . Comme les autres commandes internes, il est intégré au fichier nommé command.com . Wikipedia a une page pour la liste des commandes DOS , et il dit:

L'interpréteur de commandes pour MS DOS s'exécute lorsqu'aucun programme d'application n'est en cours d'exécution; après la fermeture d'une application, si la mémoire utilisée pour l'interpréteur de commandes a été écrasée, MS DOS rechargera l'interpréteur de commandes à partir du stockage sur disque. L'interpréteur de commandes est généralement stocké dans un fichier appelé " COMMAND.COM ". Certaines commandes sont intégrées à COMMAND.COM. Lorsque l'utilisateur tape une ligne de texte à l'invite de commandes du système d'exploitation, COMMAND.COM analysera la ligne et tentera de faire correspondre un nom de commande à une commande intégrée ou au nom d'un fichier programme exécutable ou d'un fichier de commandes sur le disque . Si aucune correspondance n'est trouvée, un message d'erreur est imprimé et l'invite de commande est actualisée.

Les commandes résidentes variaient légèrement entre les révisions de MS DOS. En règle générale, les fonctions DIR (répertoire de liste), ERASE ou DEL (effacer un fichier ou un répertoire), COPY (copier des fichiers), DATE (afficher ou définir la date), TIME (afficher ou définir l'heure), CD (modifier le répertoire de travail), MD (créer un répertoire sur le disque actuel), REN (renommer un fichier ou un répertoire) et quelques autres résidaient dans COMMAND.COM.

Pour compléter ma réponse, voici une liste de commandes internes et externes MS-DOS. Les commandes internes résident dans COMMAND.COM , qui se charge en mémoire lorsque le système informatique est démarré; ces commandes ne résident pas sur le disque. Les commandes externes sont des fichiers qui résident sur le disque et ont une extension .COM , .EXE ou .BAT . Les deux types de commandes sont exécutés à partir de l'invite MS-DOS.

Commandes internes:

  • PAUSE
  • APPEL
  • CHCP
  • CHDIR (CD)
  • CLS
  • COPIE
  • CTTY
  • DATE
  • DEL (EFFACER)
  • DIR
  • ÉCHO
  • SORTIE
  • POUR
  • ALLER À
  • SI
  • MKDIR (MD)
  • CHEMIN
  • PAUSE
  • RAPIDE
  • REM
  • RENOMMER (REN)
  • RMDIR (RD)
  • ENSEMBLE
  • DÉCALAGE
  • TEMPS
  • TYPE
  • VER
  • VÉRIFIER
  • VOL

Commandes externes:

  • APPEND.EXE
  • ASSIGN.COM
  • ATTRIB.EXE
  • BACKUP.EXE
  • CHKDSK.EXE
  • COMMAND.COM
  • COMP.EXE
  • DEBUG.EXE
  • DISKCOMP.COM
  • DISKCOPY.COM
  • DOSKEY.COM
  • DOSSHELL.COM
  • EDIT.COM
  • EDLIN.EXE
  • EMM386.EXE
  • EXE2BIN.EXE
  • EXPAND.EXE
  • FASTOPEN.EXE
  • FC.EXE
  • FDISK.EXE
  • FORMAT.COM
  • GRAFTABLE.COM
  • GRAPHICS.COM
  • HELP.EXE
  • JOIN.EXE
  • KEYB.COM
  • LABEL.EXE
  • MEM.EXE
  • MIRROR.COM
  • MODE.COM
  • MORE.COM
  • NLSFUNC.EXE
  • PRINT.EXE
  • QBASIC.EXE
  • RECOVER.EXE
  • REPLACE.EXE
  • RESTORE.EXE
  • SETVER.EXE
  • SHARE.EXE
  • SORT.EXE
  • SUBST.EXE
  • SYS.COM
  • TREE.COM
  • UNDELETE.EXE
  • UNFORMAT.COM
  • XCOPY.EXE

Référence: Microsoft Support

Nota bene: Les commandes externes résident en C:\Windows\System32supposant que le lecteur racine l'est C:.


Un +1 pour vous si vous répondez à la partie non expliquée de l'OP de la question concernant l'endroit où résident les services publics externes . (C'est une très bonne réponse jusqu'à présent, d'ailleurs.)
Pause jusqu'à nouvel ordre.

4
+1 pour une liste complète, mais -1 pour mélanger le shell de ligne de commande MS-DOS et Windows.
grawity

@Dennis: Je vous en prie, et merci de le rappeler. @grawity: Pouvez-vous s'il vous plaît laisser tomber quelques lignes pour clarifier la confusion? Je ne vois vraiment pas quelle partie de ma réponse fait défaut.
Mehper C. Palavuzlar

5
Je ne sais pas si c'est exactement ce à quoi grawity fait allusion, mais command.com était le nom du shell de ligne de commande DOS natif. Il était inclus dans Windows 9x car cette génération de fenêtres dépendait de DOS pour certains services. Windows NT ne dépend pas du tout de DOS et donc command.com n'est pas présent, le shell dans NT est une application Windows native appelée cmd.exe située dans% WINDIR% \ System32
Crippledsmurf

10

La plupart des commandes "DOS" standard sont intégrées dans le shell de commande dans Windows. Il n'y a pas d' application diroucd


2

Pour référence supplémentaire, voici un joli site Web qui présente une assez bonne liste de commandes disponibles pour cmd.exe:

http://ss64.com/nt/

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.