L’immense majorité des systèmes d’exploitation offrent un mode ligne de commandes. Le mode ligne de commande permet à une utilisatrice ou à un utilisateur de communiquer, par voie de commandes textuelles, avec le système d’exploitation.
Note: On utilisera parfois le vocable mode console à la place de mode d’entrée à la ligne de commande.
Le mode console repose sur l’existence d’un programme spécial nommé l’interpréteur de commandes. Sous DOS, ce programme porte le nom COMMAND.COM. Sous WinNT, Win2K et WinXP, un outil plus moderne et plus puissant nommé CMD.EXE est mis à votre disposition.
Lorsque vous entrez une commande à la console (par exemple: dir, cd .. ou copy a.txt c:b.txt), vous ne communiquez pas directement avec le système d’exploitation; vous demandez plutôt à l’interpréteur de commandes de communiquer avec le système d’exploitation pour vous.
À l’aide d’un interpréteur de commandes, en connaissant l’ensemble de ses commandes et en sachant les utiliser, vous pouvez communiquer de façon assez formelle avec le système d’exploitation.
Par exemple, il est possible d’aller au répertoire YOUPPI de l’unité A: pour en déplacer le fichier a.txt vers le répertoire YO\MAN\ de l’unité C: par la suite de commandes suivante:
C:\>a: A:\>cd youppi A:\YOUPPI>copy a.txt c:\yo\man 1 fichier(s) copié(s) A:\YOUPPI>del a.txt
ou, tout simplement:
C:\>copy a:\youppi\a.txt c:\yo\man 1 fichier(s) copié(s) C:\>del a:\youppi\a.txt
Remarquez que, pour notre exemple, le répertoire initial de travail s’avère être la racine de l’unité C:. Toutefois, cela n’a pas d’importance réelle pour le travail accompli ici, et le répertoire initial pourrait être à peu près n’importe où. Attention: ceci présume que le fichier A:\YOUPPI\a.txt existe déjà, et qu’il en va de même pour le répertoire C:\YO\MAN\.
L’invite |
Le préfixe A:\YOUPPI> ou C:\> en début de ligne est ce qu’on nomme le prompt (certains disent l’invite), servant à inviter l’usager à entrer une commande. On trouvera souvent, sous DOS, le prompt indiquant l’unité courante (A:, C:) et le répertoire courant (\YOUPPI). |
Remarquez que les commandes d’un interpréteur de commandes prennent des noms de fichiers et de répertoires sous deux formes, soit la forme relative et la forme absolue.
Une notation absolue spécifie le chemin complet (à partir d’une racine) menant à un fichier ou à un répertoire. Par exemple, C:\DOSSIER\FICHIER.EXT.
Une notation relative ne spécifie le chemin menant à un fichier ou à un répertoire qu’à partir du répertoire courant. Par exemple, DOSSIER\FICHIER.EXT ou encore simplement FICHIER.EXT.
Tout interpréteur de commandes doit inclure l’idée d’être quelque part. Quand on écrit YOUPPI.TXT, par exemple, il faut qu’on sache dans quel répertoire on se trouve selon l’interpréteur de commandes pour savoir de quel fichier on parle. Cet «endroit», c’est le répertoire courant, ou répertoire de travail.
Connaître le chemin de travail courant (ou chemin de travail, working directory) est important lorsqu’on a recours au mode console (ce sera aussi vrai sous Linux), et peut l’être aussi beaucoup dans un environnement graphique si on veut s’assurer que les programmes fonctionnent correctement.
Une commande pour l’interpréteur de commandes texte de notre système d’exploitation se construit (grossièrement) comme suit (ceci est le modèle élémentaire, mais il peut être enrichi par des ajouts que nous éviterons ici):
NOM PARAMÈTRES
où NOM est le nom de la commande (par exemple DIR, COPY, DEL, MD, etc.) et PARAMÈTRES est une liste de “mots” qui indiquent ce sur quoi la commande opère. Il peut, pour certaines commandes, ne pas y avoir de paramètres du tout.
On sépare une commande de ses paramètres (et on sépare les paramètres entre eux) à l’aide de caractères d’espacement.
Exemple de commande sans paramètre:
DIR
La commande DIR liste le contenu d’un répertoire. En l’absence de paramètres, le comportement par défaut de la commande est de lister le contenu du répertoire courant (répertoire de travail).
Exemples de commandes avec un seul paramètre:
DIR /p
La commande DIR liste le contenu d’un répertoire. Le paramètre ici est un modificateur (/p signifie, pour la commande DIR, de produire un affichage page par page).
DIR ..
La commande DIR liste le contenu d’un répertoire. Le paramètre ici est un nom de répertoire relatif (.. signifie le parent du répertoire courant, quel qu’il soit).
DIR C:\WINDOWS\
La commande DIR liste le contenu d’un répertoire. Le paramètre ici est un nom de répertoire spécifié de manière absolue (à partir de la racine).
Exemples de commandes avec deux paramètres:
DIR .. /p
La commande DIR liste le contenu d’un répertoire. Les paramètres ici sont un modificateur (/p signifie, pour la commande DIR, de produire un affichage page par page) et une indication relative de répertoire (..). Ces paramètres auraient très bien pu être inversés.
DIR C:\WINDOWS /w
La commande DIR liste le contenu d’un répertoire. Les paramètres ici sont un modificateur (/w signifie, pour la commande DIR, de produire un affichage en mode largeur de page) et une indication absolue de répertoire.
Ci-dessous, vous trouverez une courte liste des commandes élémentaires de l’interpréteur de commandes texte du système d’exploitation. La clé du succès pour plusieurs de ces commandes est de savoir spécifier correctement les noms de fichiers et de répertoires sur lesquels on désire agir.
Commande |
Rôle |
Paramètres possibles |
Exemples |
HELP |
Affiche l'aide en ligne sur les commandes textes. |
Le nom d'une commande. |
HELP |
ECHO |
Affiche à l’écran un message |
Le message à afficher |
ECHO J'aime mon prof! |
DIR |
Liste les fichiers et les répertoires spécifiés de la manière indiquée |
/p, /w, /o, une spécification de fichier ou de répertoire |
Voir ci-dessus |
COPY |
Copie une source vers une destination. Les deux peuvent être des fichiers ou des répertoires |
Une spécification de fichier ou de répertoire source, et une spécification de fichier ou de répertoire destination |
COPY *.* C:\BACKUP |
MD |
Créer un répertoire |
Une spécification de répertoire (celui à créer, qui doit ne pas exister au préalable) |
MD UN_REP |
RD |
Supprimer un répertoire |
Une spécification de répertoire (celui à supprimer, qui doit exister au préalable). /s permet de supprimer les sous-répertoires contenus dans le répertoire (une arborescence complète peut alors être supprimée d'un coup). |
RD NOUV_REP |
CD |
Changer le répertoire de travail sur une unité de disque |
Une spécification de répertoire (celle de destination, c’est-à-dire le répertoire de travail désiré une fois la commande exécutée) |
CD .. |
DEL |
Supprimer un fichier |
Une spécification de fichier. Si on utilise plutôt un nom de répertoire, son contenu sera supprimé, mais le répertoire lui-même continuera d'exister. Les sous-répertoires et leur contenu ne sont pas affectés, sauf si l'on utilise le modificateur /s. |
DEL *.VIR |
TYPE |
Lister le contenu d’un fichier |
Une spécification de fichier |
TYPE C:\WINDOWS\WIN.INI |
MOVE |
Déplacer une source vers une destination. Les deux peuvent être des fichiers ou des répertoires |
Une spécification de fichier ou de répertoire source, et une spécification de fichier ou de répertoire destination |
MOVE *.BMP C:\IMAGES\BITMAPS |
RENAME |
Renommer un fichier ou un répertoire |
Une spécification de fichier ou de répertoire source, et une spécification de fichier ou de répertoire destination |
RENAME A.BAK A.COM |
L’invite présentée au début de chaque ligne de commande lorsqu’on se trouve face à l’interpréteur de commandes de Windows peut être personnalisé.
Le modèle le plus commun sous Windows indique le répertoire de travail courant, mais rien n’y oblige—sous Linux, on utilisera en général une autre convention, et pour des raisons qui se défendent fort bien.
On personnalisera le prompt de Windows par la commande PROMPT suivie de paramètres. Le prompt par défaut est $p$g.
Pour obtenir le texte explicatif de la commande prompt, allez-y de prompt /? à la ligne de commandes.
PROMPT [texte] texte spécifie une nouvelle invite. L'invite peut être composée de caractères normaux et des codes suivants : $A & (signe &) $B | (barre verticale) $C ( (parenthèse gauche) $D date actuelle $E code ECHAP (code ASCII 27) $F ) (parenthèse droite) $G > (signe supérieur) $H retour arrière (efface le caractère précédent) $L < (signe inférieur) $N lecteur en cours $P lecteur et chemin d'accès en cours $Q = (signe égal) $S (espace) $T heure en cours $V numéro de version de Windows XP $_ retour chariot et saut de ligne $$ $ (signe dollar)
PROMPT sans paramètre rétablit l'invite à sa valeur par défaut.