Premiers pas avec cmd

Ouvrir une invite de commande

L’invite de commande est préinstallée sur tous les systèmes d’exploitation Windows NT, Windows CE, OS/2 et eComStation, et existe en tant que cmd.exe, généralement situé dans C:\Windows\system32\cmd.exe

Sous Windows 7, les moyens les plus rapides d’ouvrir l’invite de commande sont :

  • Appuyez sur [![entrez la description de l’image ici][1]][1], tapez “cmd” puis appuyez sur Entrée.

  • Appuyez sur [![entrez la description de l’image ici][1]][1]+R, tapez “cmd” puis appuyez sur Entrée.

Il peut également être ouvert en naviguant jusqu’à l’exécutable et en double-cliquant dessus.

Dans certains cas, vous devrez peut-être exécuter cmd avec des autorisations élevées, dans ce cas, cliquez avec le bouton droit de la souris et sélectionnez “Exécuter en tant qu’administrateur”. Cela peut également être réalisé en appuyant sur Control+ Maj+Entrée au lieu de Entrée.

[1] : http://i.stack.imgur.com/B8Zit.png

Commandes dans CMD

Les commandes disponibles seront affichées, y compris une brève description, sous forme de tableau. Dans Windows 10, les commandes suivantes sont répertoriées :

|Commande | Descriptif | |——————–|—————————————- ———————————-| |ASSOC | Affiche ou modifie les associations d’extension de fichier. | |ATTRIB | Affiche ou modifie les attributs de fichier. | |BREAK | Définit ou efface la vérification CTRL+C étendue. | |BCDEDIT | Définit les propriétés dans la base de données de démarrage pour contrôler le chargement du démarrage. | |CACLS | Affiche ou modifie les listes de contrôle d’accès (ACL) des fichiers. | |APPEL | Appelle un programme batch à partir d’un autre. | |CD | Affiche le nom ou modifie le répertoire courant. | |CHCP | Affiche ou définit le numéro de page de code actif. | |CHDIR | Affiche le nom ou modifie le répertoire courant. | |CHKDSK | Vérifie un disque et affiche un rapport d’état. | |CHKNTFS | Affiche ou modifie la vérification du disque au démarrage. | |CLS | Efface l’écran. | |CMD | Démarre une nouvelle instance de l’interpréteur de commandes Windows. | |COULEUR | Définit les couleurs de premier plan et d’arrière-plan par défaut de la console. | |COMP | Compare le contenu de deux fichiers ou ensembles de fichiers. | |COMPACTE | Affiche ou modifie la compression des fichiers sur les partitions NTFS. | |CONVERTIR | Convertit les volumes FAT en NTFS. Vous ne pouvez pas convertir le | | | lecteur actuel. | |COPIER | Copie un ou plusieurs fichiers vers un autre emplacement. | |DATE | Affiche ou règle la date. | |SUPPR | Supprime un ou plusieurs fichiers. | |DIR | Affiche une liste de fichiers et de sous-répertoires dans un répertoire. | |DISKPART | Affiche ou configure les propriétés de la partition de disque. | |DOSKEY | Modifie les lignes de commande, rappelle les commandes Windows et | | | crée des macros. | |REQUETECONDUCTEUR | Affiche l’état et les propriétés actuels du pilote de périphérique. | |ÉCHO | Affiche des messages ou active ou désactive l’écho des commandes. | |ENDLOCAL | Termine la localisation des changements d’environnement dans un fichier batch. | |EFFACER | Supprime un ou plusieurs fichiers. | |SORTIE | Quitte le programme CMD.EXE (interpréteur de commandes). | |FC | Compare deux fichiers ou ensembles de fichiers et affiche le | | | différences entre eux. | |TROUVER | Recherche une chaîne de texte dans un ou plusieurs fichiers. | |FINDSTR | Recherche des chaînes dans les fichiers. | |POUR | Exécute une commande spécifiée pour chaque fichier d’un ensemble de fichiers. | |FORMAT | Formate un disque pour une utilisation avec Windows. | |FSUTIL | Affiche ou configure les propriétés du système de fichiers. | |FTYPE | Affiche ou modifie les types de fichiers utilisés dans l’extension de fichier | | | les associations. | |ALLER À | Dirige l’interpréteur de commandes Windows vers une ligne étiquetée dans | | | un programme batch. | |GPRÉSULTAT | Affiche les informations de stratégie de groupe pour la machine ou l’utilisateur. | |GRAFTABL | Permet à Windows d’afficher un jeu de caractères étendu dans | | | mode graphique. | |AIDE | Fournit des informations d’aide pour les commandes Windows. | |ICACLS | Afficher, modifier, sauvegarder ou restaurer les ACL pour les fichiers et | | | répertoires. | |SI | Effectue le traitement conditionnel dans les programmes batch. | |ÉTIQUETTE | Crée, modifie ou supprime le nom de volume d’un disque. | |MD | Crée un répertoire. | |MKDIR | Crée un répertoire. | |MKLINK | crée des liens symboliques et des liens physiques | |MODE | Configure un périphérique système. | |PLUS | Affiche la sortie un écran à la fois. | |DEPLACER | Déplace un ou plusieurs fichiers d’un répertoire à un autre | | | annuaire. | |OPENFILES | Affiche les fichiers ouverts par les utilisateurs distants pour un partage de fichiers. | |CHEMIN | Affiche ou définit un chemin de recherche pour les fichiers exécutables. | |PAUSE | Suspend le traitement d’un fichier batch et affiche un message. | |POPD | Restaure la valeur précédente du répertoire courant enregistré par | | | POUSSEZ. | |IMPRIMER | Imprime un fichier texte. | |INVITE | Modifie l’invite de commande Windows. | |PUSHD | Enregistre le répertoire courant puis le modifie. | |RD | Supprime un répertoire. | |RÉCUPÉRER | Récupère les informations lisibles à partir d’un disque défectueux ou défectueux. | |REM | Enregistre les commentaires (remarques) dans des fichiers batch ou CONFIG.SYS. | |REN | Renomme un fichier ou des fichiers. | |RENOMMER | Renomme un fichier ou des fichiers. | |REMPLACER | Remplace les fichiers. | |RMDIR | Supprime un répertoire. | |ROBOCOPIE | Utilitaire avancé pour copier des fichiers et des arborescences de répertoires | |SET | Affiche, définit ou supprime les variables d’environnement Windows. | |SETLOCAL | Commence la localisation des changements d’environnement dans un fichier batch. | |SC | Affiche ou configure les services (processus d’arrière-plan). | |SCHTÂCHES | Planifie les commandes et les programmes à exécuter sur un ordinateur. | |MAJ| Déplace la position des paramètres remplaçables dans les fichiers batch. | |ARRÊT | Permet un arrêt local ou à distance approprié de la machine. | |TRIER | Trie l’entrée. | |DÉMARRER | Démarre une fenêtre séparée pour exécuter un programme ou une commande spécifié. | |SUBST | Associe un chemin à une lettre de lecteur. | |INFOSSYSTÈME | Affiche les propriétés et la configuration spécifiques à la machine. | |LISTE DES TÂCHES | Affiche toutes les tâches en cours d’exécution, y compris les services. | |TASKILL | Tuez ou arrêtez un processus ou une application en cours d’exécution. | |HEURE | Affiche ou règle l’heure du système. | |TITRE | Définit le titre de la fenêtre pour une session CMD.EXE. | |ARBRE | Affiche graphiquement la structure de répertoire d’un lecteur ou | | | chemin. | |TYPE | Affiche le contenu d’un fichier texte. | |VER | Affiche la version de Windows. | |VERIFIER | Indique à Windows s’il faut vérifier que vos fichiers sont écrits | | | correctement sur un disque. | |VOL | Affiche une étiquette de volume de disque et un numéro de série. | |XCOPIER | Copie les fichiers et les arborescences de répertoires. | |WMIC | Affiche les informations WMI dans le shell de commande interactif. |

Pour obtenir plus d’informations sur une commande spécifique, utilisez l’option /?, par ex. la commande tree donne :

tree /?

Graphically displays the folder structure of a drive or path.

TREE [drive:][path] [/F] [/A]
 
   /F   Display the names of the files in each folder.
   /A   Use ASCII instead of extended characters.

L’une des choses les plus courantes que vous devrez faire dans l’invite de commande est de naviguer dans votre système de fichiers. Pour ce faire, nous utiliserons les mots-clés cd et dir. Commencez par ouvrir une invite de commande en utilisant l’une des méthodes mentionnées [ici] (https://www.wikiod.com/fr/cmd/premiers-pas-avec-cmd#Ouverture d’une invite de commande). Vous voyez très probablement quelque chose de similaire à ce qui est ci-dessous, où UserName est votre utilisateur.

C:\Users\UserName>

Peu importe où vous vous trouvez dans votre structure de fichiers, si votre système est comme la plupart, nous pouvons commencer avec cette commande :

cd C:\

Cela changera votre répertoire actuel en lecteur C:\. Remarquez comment l’écran ressemble maintenant à ceci

C:\>

Ensuite, lancez un dir pour que nous puissions voir tout ce qui se trouve dans le lecteur C:\

dir

Cela vous montrera une liste de fichiers et de dossiers avec quelques informations à leur sujet, semblable à ceci :

[![commande dir][1]][1]

Il y a beaucoup de bonnes informations ici, mais pour la navigation de base, nous nous soucions uniquement de la colonne la plus à droite. Remarquez comment nous avons un dossier “Utilisateurs”. Cela signifie que nous pouvons exécuter ceci

cd Users

Maintenant, si vous lancez à nouveau dir, vous verrez tous les fichiers et dossiers dans votre répertoire C:\Users. Maintenant, nous n’avons pas trouvé ce que nous voulions ici, alors revenons au dossier parent. Plutôt que de taper le chemin d’accès, nous pouvons utiliser .. pour remonter un dossier comme ceci

cd ..

Nous sommes maintenant de retour dans C:\. Si vous souhaitez remonter plusieurs dossiers à la fois, vous pouvez mettre une barre oblique inverse et un autre ensemble de points comme ceci : cd ..\.., mais nous n’avions besoin que d’un dossier.

Maintenant, nous voulons regarder dans ce dossier “Program Files”. Pour éviter de confondre le système, c’est une bonne idée de mettre des guillemets autour des répertoires, surtout quand il y a des espaces dans le nom. Donc cette fois, nous allons utiliser cette commande

C:\>cd "Program Files"

Vous êtes maintenant dans C:\Program Files> et une commande dir vous dira maintenant tout ce qui s’y trouve.

Alors, disons que nous en avons assez de nous promener pour trouver le dossier et que nous cherchions exactement où nous devions aller. Il s’avère que c’est C:\Windows\Logs Plutôt que de faire un .. vers Windows vers Logs, nous pouvons simplement mettre le chemin complet comme ceci :

cd "C:\Windows\Logs"

Et c’est la base de la navigation dans l’invite de commande. Vous pouvez maintenant parcourir tous vos dossiers afin de pouvoir exécuter vos autres commandes aux bons endroits.

[1] : http://i.stack.imgur.com/f2XTr.png

Fonctionnalités

Microsoft Command Prompt est un interpréteur de ligne de commande (CLI) pour les systèmes d’exploitation Windows.

Une CLI est un programme destiné principalement à lire les instructions du système d’exploitation tapées sur un clavier par l’utilisateur. Il s’adresse donc aussi à une interface de ligne de commande, pour l’opposer aux interfaces graphiques.

Comme ces interfaces (qu’elles soient textuelles ou graphiques) empêchent l’utilisateur d’accéder directement au noyau du système d’exploitation, elles sont également dites shells.

Étant donné le nom du fichier exécutable de l’invite de commande, “cmd.exe”, l’invite de commande porte le nom convivial “cmd”. Compte tenu de son rôle de pilotage de l’OS, on dit aussi la console.

Comme les autres shells, cmd peut lire un lot d’instructions à partir d’un fichier. Dans ce cas, le shell cmd agit comme un interpréteur de langage et le contenu du fichier peut être considéré comme un programme réel. Lors de l’exécution de ces programmes batch, il n’y a pas de phase intermédiaire de compilation. Ils sont généralement lus, interprétés et exécutés ligne par ligne. Puisqu’il n’y a pas de compilation, il n’y a pas de production d’un fichier exécutable séparé. Pour cette raison, les programmes sont appelés scripts batch ou scripts shell.

Notez que les instructions saisies de manière interactive peuvent avoir une syntaxe légèrement différente de celles soumises sous forme de script, mais le principe général est que ce qui peut être saisi à partir de la ligne de commande peut également être placé dans un fichier pour une réutilisation ultérieure.

Bonjour le monde

Les scripts batch d’invite de commande ont l’extension .cmd ou .bat, ce dernier pour des raisons de compatibilité.

Pour créer un hello-word-script, vous avez d’abord besoin d’un endroit où le taper. Pour les scripts simples, le Bloc-notes de Windows fera également l’affaire. Si vous êtes sérieux au sujet des scripts shell, vous avez besoin d’outils plus efficaces. Il existe tout de même plusieurs alternatives gratuites, comme Notepad++.

Dans votre éditeur désigné, saisissez :

echo Hello World
pause

Enregistrez-le sous hello.cmd

Si vous utilisez “Notepad” comme éditeur, vous devez prêter une grande attention au nom enregistré, car le Bloc-notes a tendance à toujours ajouter une extension .txt à vos fichiers, ce qui signifie que le nom réel de votre fichier peut être hello .cmd.txt. Pour éviter cela, dans la boîte de dialogue d’enregistrement :

  1. Dans le champ “Nom de fichier”, saisissez le nom entre guillemets doubles, par ex. "bonjour.cmd"
  2. Dans le champ “Type de fichier”, sélectionnez Tous les fichiers, au lieu de l’option Document texte par défaut.

Si le fichier a été enregistré correctement, son icône doit ressembler à (Windows Vista) :

[![icône cmd][1]][1]

Vous pouvez également envisager de désactiver l’option “Masquer l’extension pour les types de fichiers connus” dans les options d’affichage des dossiers de l’Explorateur de fichiers. Dans ce cas, les noms de fichiers sont toujours affichés avec leurs extensions.

Pour exécuter hello.cmd il y a deux possibilités. Si vous utilisez le shell graphique de Windows, double-cliquez simplement sur son icône.

Si vous souhaitez utiliser l’invite de commande elle-même, vous devez d’abord identifier le répertoire dans lequel vous avez enregistré hello.cmd. À cet égard, si vous ouvrez l’explorateur de fichiers avec +E. Dans les fenêtres listant les fichiers, vous lisez normalement le nom du chemin du répertoire les contenant. Vous pouvez donc identifier le répertoire de hello.cmd. Les noms de répertoire Windows ont tendance à être assez longs et leur saisie est sujette aux erreurs. Il est préférable de sélectionner et de copier le chemin du répertoire dans le presse-papiers pour le coller ultérieurement.

Démarrez l’invite de commande. Vous avez lu une ligne similaire à celle-ci.

Microsoft Windows [Version ...]
(c) ... Microsoft Corporation. All rights reserved.
 
C:\Users\...>

La version/année de Windows dépend bien sûr de la vôtre. Dans la dernière ligne, avant >, vous lisez le chemin du répertoire courant. Vous devez rendre courant le répertoire où se trouve votre script. Pour cette raison, entrez la commande de changement de répertoire cd, en utilisant une ligne similaire à la suivante :

cd <dirpath>

Au lieu de <dirpath>, collez le nom du répertoire que vous avez précédemment copié. Pour coller le chemin du répertoire, sous Windows 10, il vous suffit de taper Ctrl-C, comme vous le feriez dans un éditeur. Pour les systèmes plus anciens, vous devriez pouvoir le faire en cliquant avec le bouton droit de la souris dans la fenêtre cmd. Après avoir entré la commande, notez que le chemin actuel, avant >, change en conséquence.

Vous pouvez maintenant exécuter votre script hello en saisissant simplement :

hello

commentaires

Le script imprime une sortie semblable à :

C:\Users\...>echo Hello World
Hello World

C:\Users\...>pause
Press any key to continue . . .

Les lignes contenant le symbole > reprennent les instructions du script comme si vous les aviez saisies de manière interactive. Cela peut être désactivé en écrivant :

@echo off

comme première ligne de votre script. Cela peut réduire l’encombrement, mais vous avez moins d’indices sur ce qui se passe, en ce qui concerne les commandes de script qui ne donnent pas de sorties visibles.

La dernière commande, “pause”, vous invite à appuyer sur n’importe quelle touche. Lorsque vous le faites, vous quittez hello. Si vous exécutez hello depuis la console, vous n’en avez pas vraiment besoin, car, lorsque hello termine son exécution, cmd.exe reste ouvert et vous pouvez lire la sortie hello. Lorsque vous double-cliquez dans l’explorateur, vous démarrez cmd.exe pendant le temps nécessaire pour exécuter hello. Lorsque hello se termine, cmd.exe fait de même et vous n’avez aucune possibilité de lire la sortie hello. La commande pause empêche hello de sortir jusqu’à ce que vous appuyiez sur une touche, ce qui donne également la possibilité de lire la sortie.

Enfin, bien que le nom du script soit hello.cmd, il n’est pas nécessaire de taper le nom entier, sa racine hello suffit. Ce mécanisme fonctionne également pour les exécutables, avec l’extension .exe. Que se passe-t-il s’il y a un script hello.cmd et un exécutable hello.exe dans le même répertoire ? Le premier a la priorité dans l’invite de commande, donc “hello.cmd” sera exécuté.

[1] : http://i.stack.imgur.com/dFGFl.png