Exporter (0) Imprimer
Développer tout

Vue d'ensemble de l'interface de commande

Mis à jour: janvier 2005

S'applique à: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2

Vue d'ensemble de l'interface de commande

L'interface de commande est un programme logiciel séparé qui permet une communication directe entre l'utilisateur et le système d'exploitation. L'interface utilisateur non graphique de l'interface de commande fournit l'environnement dans lequel vous exécutez des applications et des utilitaires en mode caractères. L'interface de commande exécute des programmes et affiche leur sortie à l'écran en utilisant des caractères individuels à l'instar de l'interpréteur de commandes MS-DOS Command.com. L'interface de commande du système d'exploitation serveur Windows utilise l'interpréteur de commandes Cmd.exe, qui charge les applications et dirige le flux des informations entre les applications, afin de convertir l'entrée utilisateur dans un format compréhensible par le système d'exploitation.

Vous pouvez utiliser l'interface de commande pour créer et modifier des fichiers de commandes(également appelés scripts) pour automatiser des tâches de routine. Par exemple, vous pouvez utiliser des scripts pour automatiser la gestion de comptes d'utilisateurs ou de sauvegardes nocturnes. Vous pouvez également utiliser la version de ligne de commande de l'environnement d'exécution de scripts Windows, à savoir CScript, pour exécuter des scripts plus sophistiqués dans l'interface de commande. Pour plus d'informations, voir Exécuter l'environnement d'exécution de scripts Windows. Vous pouvez effectuer des opérations de manière plus performante en utilisant des fichiers de commandes plutôt qu'à l'aide de l'interface utilisateur. Les fichiers de commandes acceptent toutes les commandes disponibles au niveau de la ligne de commande. Pour plus d'informations sur les fichiers de commandes et les scripts, voir Utilisation de fichiers de commandes.

Vous pouvez personnaliser la fenêtre d'invite de commandes pour une visualisation plus facile et un meilleur contrôle de la façon dont vous exécutez les programmes. Pour plus d'informations sur la personnalisation de la fenêtre d'invite de commandes, voir Configurer l'invite de commandes.

Utilisation de la syntaxe de la commande

La syntaxe apparaît dans l'ordre dans lequel vous devez taper une commande et tous les paramètres qui la suivent. L'exemple suivant de la commande xcopy illustre différents formats de texte de syntaxe :

xcopy Source [Destination] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:JJ-MM-AAAA]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a | /m}] [/n] [/o] [/x] [/exclude:Fichier1[+[Fichier2]][+[Fichier3]] [{/y | /-y}] [/z]

Le tableau suivant explique comment interpréter les différents formats de texte.

Légende de mise en forme

Mise en forme Signification

Italique

Informations que l'utilisateur doit fournir

Gras

Éléments que l'utilisateur doit taper tels qu'ils sont indiqués

Points de suspension (...)

Paramètre pouvant être répété plusieurs fois dans une ligne de commande

Entre crochets ([])

Éléments facultatifs

Entre accolades ({}), avec séparation des options par une barre verticale (|). Exemple : {pair|impair}

Ensemble d'options parmi lesquelles l'utilisateur doit en choisir une seule

Police Courier

Code ou données de programme

Utilisation de plusieurs commandes et symboles de traitement conditionnel

Vous pouvez exécuter plusieurs commandes depuis une seule ligne de commande ou depuis un seul script à l'aide de symboles de traitement conditionnel. Lorsque vous exécutez plusieurs commandes avec des symboles de traitement conditionnel, les commandes situées à droite du symbole de traitement conditionnel agissent en fonction des résultats de la commande située à gauche du symbole de traitement conditionnel. Par exemple, vous pouvez exécuter une commande uniquement si la commande précédente échoue. Ou, vous pouvez exécuter une commande uniquement si la commande précédente réussit.

Vous pouvez utiliser les caractères spéciaux répertoriés dans le tableau suivant pour transmettre plusieurs commandes.

 

Caractère Syntaxe Définition

& [...]

Commande1 &Commande2

Permet de séparer plusieurs commandes sur une ligne de commande. Cmd.exe exécute la première commande, puis la seconde.

&& [...]

Commande1 &&Commande2

Permet d'exécuter la commande qui suit le symbole &&, uniquement si la commande qui précède ce symbole réussit. Cmd.exe exécute la première commande, puis exécute la seconde commande uniquement si la première a été exécutée avec succès.

|| [...]

Commande1 || Commande2

Permet d'exécuter la commande qui suit le symbole ||, uniquement si la commande qui précède ce symbole échoue. Cmd.exe exécute la première commande, puis exécute la seconde commande uniquement si la première n'a pas été exécutée avec succès (c'est-à-dire si elle reçoit un code d'erreur supérieur à zéro).

( ) [...]

( Commande1 & Commande2)

Permet de regrouper ou d'imbriquer plusieurs commandes.

; ou ,

Commande1 Paramètre1;Paramètre2

Permet de séparer des paramètres de commande.

Remarques

  • La perluette (&), la barre verticale (|) et les parenthèses [( )] sont des caractères spéciaux qui doivent être précédés du caractère d'échappement (^) ou de guillemets lorsque vous les transmettez en tant qu'arguments.

  • Si une commande effectue avec succès une opération, elle renvoie un code de sortie de zéro (0) ou aucun code de sortie. Pour plus d'informations sur les codes de sortie, voir Utilisation des Kits de ressources techniques et de déploiement Windows.

Imbrication d'interfaces de commande

Vous pouvez imbriquer des interfaces de commande dans Cmd.exe en ouvrant une nouvelle instance de Cmd.exe au niveau de l'invite de commandes. Par défaut, chaque instance de Cmd.exe hérite de l'environnement de son application Cmd.exe parente. En imbriquant des instances de Cmd.exe, vous pouvez modifier l'environnement local sans affecter l'application parente de Cmd.exe. Ceci vous permet de préserver l'environnement d'origine de Cmd.exe et d'y retourner après avoir terminé l'imbrication de l'interface de commande. Les modifications apportées dans l'interface de commande imbriquée ne sont pas enregistrées.

Pour imbriquer une interface de commande, à l'invite de commandes, tapez :

cmd

Un message similaire à ce qui suit apparaît :

Microsoft (R) Windows Server 2003, Standard Edition (TM)(C) Copyright 1985-2002 Microsoft Corp.

Pour fermer l'interface de commande imbriquée, tapez exit.

Vous pouvez même localiser les modifications supplémentaires apportées à une instance de Cmd.exe (ou dans un script) en utilisant les commandes setlocal et endlocal. Setlocal crée une étendue locale, et endlocal met fin à l'étendue locale. Toute modification apportée dans l'étendue setlocal et endlocal est rejetée, laissant ainsi l'environnement d'origine inchangé. Vous pouvez imbriquer ces deux commandes jusqu'à créer au maximum 32 niveaux. Pour plus d'informations sur les commandes setlocal et endlocal, voir Setlocal et Endlocal.

Utilisation de variables d'environnement avec Cmd.exe

L'environnement d'interface de commande Cmd.exe est défini par des variables qui déterminent le comportement de l'interface de commande et du système d'exploitation. Vous pouvez définir le comportement de l'environnement d'interface de commande ou de tout l'environnement du système d'exploitation en utilisant deux types de variables d'environnement : système ou locales. Les variables d'environnement système définissent le comportement de l'ensemble de l'environnement du système d'exploitation. Les variables d'environnement locales définissent le comportement de l'environnement de l'instance en cours de Cmd.exe.

Les variables d'environnement système sont prédéfinies dans le système d'exploitation et sont disponibles pour tous les processus des systèmes d'exploitation serveur Windows. Seuls les utilisateurs disposant d'informations d'identification administrative peuvent modifier les variables système. Ces variables sont le plus souvent utilisées dans des scripts d'ouverture de session.

Les variables d'environnement locales sont disponibles uniquement lorsque l'utilisateur pour lequel elles ont été créées a ouvert une session sur l'ordinateur. Les variables locales définies dans la ruche HKEY_CURRENT_USER sont valides uniquement pour l'utilisateur actuel, mais définissent le comportement de l'ensemble de l'environnement du système d'exploitation.

La liste suivante décrit les différents types de variables par ordre décroissant de priorité :

  1. Variables système intégrées

  2. Variables systèmes situées dans la ruche HKEY_LOCAL_MACHINE

  3. Variables locales situées dans la ruche HKEY_CURRENT_USER

  4. Toutes les variables d'environnement et tous les chemins définis dans le fichier Autoexec.bat

  5. Toutes les variables d'environnement et tous les chemins définis dans un script d'ouverture de session (le cas échéant)

  6. Variables utilisées de façon interactive dans un script ou un fichier de commandes

Dans l'interface de commande, chaque instance de Cmd.exe hérite de l'environnement de son application parente. Par conséquent, vous pouvez modifier les variables du nouvel environnement Cmd.exe sans affecter l'environnement de l'application parente.

Le tableau suivant répertorie les variables d'environnement locales et système pour le système d'exploitation Windows Server.

 

Variable Type Description

%ALLUSERSPROFILE%

Ordinateur local

Renvoie l'emplacement du profil All Users (Tous les utilisateurs).

%APPDATA%

Ordinateur local

Renvoie l'emplacement où les applications stockent les données par défaut.

%CD%

Ordinateur local

Renvoie la chaîne du répertoire en cours.

%CMDCMDLINE%

Ordinateur local

Renvoie la ligne de commande exacte utilisée pour démarrer l'instance en cours de Cmd.exe.

%CMDEXTVERSION%

Système

Renvoie le numéro de version des extensions actuelles de l'interpréteur de commandes.

%COMPUTERNAME%

Système

Renvoie le nom de l'ordinateur.

%COMSPEC%

Système

Renvoie le chemin d'accès exact du fichier exécutable de l'interface de commande.

%DATE%

Système

Renvoie la date actuelle. Utilise le même format que la commande date /t. Générée par Cmd.exe. Pour plus d'informations sur la commande date, voir Date.

%ERRORLEVEL%

Système

Renvoie le code d'erreur de la dernière commande utilisée. Une valeur différente de zéro indique généralement une erreur.

%HOMEDRIVE%

Système

Renvoie la lettre de lecteur de la station de travail locale qui est connectée au répertoire de base de l'utilisateur Définie en fonction de la valeur du répertoire de base. Le répertoire de base de l'utilisateur est spécifié dans Utilisateurs et groupes locaux.

%HOMEPATH%

Système

Renvoie le chemin complet du répertoire de base de l'utilisateur Définie en fonction de la valeur du répertoire de base. Le répertoire de base de l'utilisateur est spécifié dans Utilisateurs et groupes locaux.

%HOMESHARE%

Système

Renvoie le chemin réseau du répertoire de base partagé de l'utilisateur. Définie en fonction de la valeur du répertoire de base. Le répertoire de base de l'utilisateur est spécifié dans Utilisateurs et groupes locaux.

%LOGONSERVER%

Ordinateur local

Renvoie le nom du contrôleur de domaine qui a validé la session d'ouverture de session en cours.

%NUMBER_OF_PROCESSORS%

Système

Spécifie le nombre de processeurs installés sur l'ordinateur.

%OS%

Système

Retourne le nom du système d'exploitation. Windows 2000 affiche le système d'exploitation sous Windows NT.

%PATH%

Système

Spécifie le chemin de recherche des fichiers exécutables.

%PATHEXT%

Système

Renvoie la liste des extensions des fichiers que le système d'exploitation considère comme exécutables.

%PROCESSOR_ARCHITECTURE%

Système

Renvoie l'architecture de puce du processeur. Valeurs : x86 ou IA64 (Itanium).

%PROCESSOR_IDENTFIER%

Système

Renvoie une description du processeur.

%PROCESSOR_LEVEL%

Système

Renvoie le numéro de modèle du processeur installé sur l'ordinateur.

%PROCESSOR_REVISION%

Système

Renvoie le numéro de révision du processeur.

%PROMPT%

Ordinateur local

Renvoie les paramètres d'invite de commandes définis pour l'interpréteur en cours. Générée par Cmd.exe.

%RANDOM%

Système

Renvoie un nombre décimal aléatoire compris entre 0 et 32767. Générée par Cmd.exe.

%SYSTEMDRIVE%

Système

Retourne le lecteur contenant le répertoire racine du système d'exploitation Windows Server (c'est-à-dire la racine système).

%SYSTEMROOT%

Système

Retourne l'emplacement du répertoire du système d'exploitation Windows Server.

%TEMP% et %TMP%

Système et Utilisateur

Renvoie les répertoires temporaires par défaut utilisés par les applications disponibles pour les utilisateurs ayant actuellement ouvert une session. Certaines applications requièrent TEMP, alors que d'autres requièrent TMP.

%TIME%

Système

Renvoie l'heure actuelle. Utilise le même format que la commande time /t. Générée par Cmd.exe. Pour plus d'informations sur la commande time, voir Time.

%USERDOMAIN%

Ordinateur local

Renvoie le nom du domaine contenant le compte de l'utilisateur.

%USERNAME%

Ordinateur local

Renvoie le nom de l'utilisateur ayant actuellement ouvert une session.

%USERPROFILE%

Ordinateur local

Renvoie l'emplacement du profil de l'utilisateur actuel.

%WINDIR%

Système

Renvoie l'emplacement du répertoire du système d'exploitation.

Définition des variables d'environnement

Utilisez la commande set pour créer, modifier, supprimer ou afficher des variables d'environnement. La commande set modifie les variables uniquement dans l'environnement de l'interface de commande.

Pour afficher une variable, à l'invite de commandes, tapez :

set Nom_Variable

Pour ajouter une variable, à l'invite de commandes, tapez :

setNom_Variable=Valeur

Pour supprimer une variable, à l'invite de commandes, tapez :

set Nom_Variable =

La plupart des caractères peuvent être utilisés comme valeurs de variables, y compris l'espace. Si vous utilisez les caractères spéciaux  <, >, |, & ou ^, vous devez les faire précéder du caractère d'échappement (^) ou de guillemets. Si vous utilisez des guillemets, ils sont inclus en tant que partie de la valeur, car tout ce qui suit le signe égal (=) est considéré comme la valeur. Observez les exemples suivants :

  • Pour créer la valeur de variable nouveau&nom, tapez :

    set varname=nouveau^&nom

  • Pour créer la valeur de variable "nouveau&nom", tapez :

    set varname="nouveau^&nom"

  • Si vous tapez set varname=nouveau&nom à l'invite de commandes, un message d'erreur similaire à ce qui suit s'affiche :

    "'nom' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes."
    

Les noms de variables ne respectent pas la casse. Toutefois, set affiche la variable exactement telle que vous l'avez saisie. Vous pouvez combiner des lettres majuscules et minuscules dans vos noms de variables afin de rendre votre code plus lisible (par exemple, NomUtilisateur).

Remarques

  • La taille maximale d'une variable d'environnement individuelle est 8 192 octets.

  • La taille maximale totale de toutes les variables d'environnement, ce qui inclut les noms de variables et le signe égal, est 65 536 Ko.

Substitution de valeurs de variables d'environnement

Pour autoriser le remplacement des valeurs des variables sur la ligne de commande ou dans les scripts, incluez le nom de la variable entre signes pourcent (c'est-à-dire %Nom_Variable%). En utilisant des symboles %, vous garantissez que Cmd.exe fait référence aux valeurs de variables au lieu d'effectuer une comparaison littérale. Après avoir défini des valeurs de variables pour un nom de variable, placez le nom de la variable entre symboles %. Cmd.exe recherches toutes les instances du nom de la variable et le remplace par la valeur de variable définie. Par exemple, si vous créez un script contenant différentes valeurs (par exemple, des noms d'utilisateurs) et que vous voulez définir la variable d'environnement USERNAME pour chaque utilisateur avec ces valeurs, vous pouvez écrire un script utilisant la variable USERNAME placée entre symboles % (pour cent). Lorsque vous exécutez ce script, Cmd.exe remplace %USERNAME% par les valeurs de variables, ce qui supprime le besoin d'effectuer cette tâche manuellement pour chaque utilisateur. La substitution de variables n'est pas récursive. Cmd.exe vérifie une fois les variables. Pour plus d'informations sur la substitution de variables, voir For et Call.

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.

Ajouts de la communauté

Afficher:
© 2014 Microsoft