|
Commande CMD
Type: system
Fonction: Exécute une nouvelle instance de l'interpréteur de commandes de Windows.
OS: vista,xp
Detail: Démarre une nouvelle instance de l'interpréteur de commandes de Windows
CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
[[/S] [/C | /K] chaîne]
/C Exécute la commande donnée par la chaîne de caractères puis se termine.
/K Exécute la commande donnée par la chaîne de caractères et reste actif.
/S Modifie le traitement de la chaîne après /C ou /K (voir ci-dessous).
/Q Exécute (sans interactions) la commande donnée puis reste actif.
/D Désactive l'exécution d'AutoRun à partir du Registre (voir ci-dessous).
/A Redirige la sortie de commandes internes vers un canal ou un fichier
ANSI.
/U Redirige la sortie de commandes internes vers un canal ou un fichier
UNICODE.
/T:fg Change la couleur du premier plan ou de l'arrière-plan (voir aussi
COLOR /?).
/E:ON Active les extensions de commande (voir ci-dessous).
/E:OFF Désactive les extensions de commande (voir ci-dessous).
/F:ON Active les caractères de fin des noms de fichiers et de répertoires
(voir ci-dessous).
/F:OFF Désactive les caractères de fin des noms de fichiers et de répertoires
(voir ci-dessous).
/V:ON Active l'expansion retardée des variables d'environnement en utilisant
! comme délimiteur. Par exemple, /V:ON permet à !var! de développer la
variable var à l'exécution. La syntaxe var développe les variables
lorsqu'elles sont entrées, ce qui est différent lorsque utilisé à
l'intérieur d'une boucle FOR.
/V:OFF Désactive l'expansion retardée des variables d'environnement.
Remarquez que des commandes multiples séparées par le séparateur « && » sont
acceptées comme une chaîne si elles sont entre guillemets. Pour des raisons de
compatibilité, /X est identique à /E:ON, /Y à /E:OFF et /R
à /C. Toute autre option est ignorée.
Si /C ou /K est indiqué, alors le reste de la ligne de commande est traité
avec la logique suivante pour prendre en compte les guillemets (") :
1. Si toutes les conditions suivantes sont respectées, alors les
guillemets de la ligne de commande sont conservés :
- pas d'option /S
- exactement deux caractères guillemet
- aucun caractère spécial entre les deux caractères guillemet, un
caractère spécial étant : &<>()@^|
- un ou plusieurs espaces entre les deux caractères guillemet
- la chaîne comprise entre les deux guillemets est le nom d'un fichier
exécutable.
2. Dans le cas contraire, l'ancien comportement vérifiera si le premier
caractère est un caractère guillemet et si tel est le cas, enlèvera le
premier caractère et le dernier caractère guillemet de la ligne de
commande, préservant tout texte se trouvant après le dernier caractère
guillemet.
Si /D n'a PAS été spécifié dans la ligne de commande, alors CMD.EXE démarrera
en recherchant les variables du Registre REG_SZ/REG_EXPAND_SZ suivantes et
si l'une ou les deux sont présentes, elles seront exécutées en priorité.
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
et/ou
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
Les extensions de commandes sont activées par défaut. Vous pouvez
également les désactiver pour une exécution particulière en utilisant
l'option /E:OFF. Vous pouvez les activer ou désactiver pour toutes les
exécutions de CMD.EXE sur une machine ou pour un utilisateur en
fixant l'une ou les deux valeurs REG_DWORD suivantes du Registre :
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions
et/ou
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions
à 0x1 ou 0x0 (en utilisant REGEDIT.EXE). Les paramètres spécifiques de
l'utilisateur sont prioritaires sur ceux de la machine. Les options de la
ligne de commande ont préséance sur les paramètres du Registre.
Les extensions de commandes impliquent des modifications ou des additions dans
les commandes suivantes :
DEL ou ERASE
COLOR
CD ou CHDIR
MD ou MKDIR
PROMPT
PUSHD
POPD
SET
SETLOCAL
ENDLOCAL
IF
FOR
CALL
SHIFT
GOTO
START (inclut également des modifications dans l'appel externe de commande)
ASSOC
FTYPE
Pour obtenir des détails spécifiques, entrez /? Nom_de_commande.
L'expansion retardée de variables d'environnement n'est PAS activée par
défaut. Vous pouvez l'activer ou la désactiver pour une utilisation
particulière de CMD.EXE avec l'option /V:ON ou /V:OFF. Vous pouvez activer
ou désactiver l'expansion retardée pour toute utilisation de CMD.EXE sur un
ordinateur ou pour un utilisateur en fixant avec REGEDIT.EXE l'une ou les
deux valeurs REG_DWORD suivantes du Registre :
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion
et/ou
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion
à la valeur 0x1 ou 0x0. Les paramètres spécifiques à l'utilisateur sont
prioritaires sur les paramètres de l'ordinateur. Les options de la ligne
de commande ont priorité sur les paramètres du Registre.
Si l'expansion retardée de variables d'environnement est activée, un point
d'exclamation peut être utilisé pour remplacer la valeur d'une variable
d'environnement lors de l'exécution.
Vous pouvez activer ou désactiver la terminaison des noms de fichiers pour
une instance particulière de CMD.EXE avec l'option /V:ON ou /V:OFF. Vous
pouvez l'activer ou la désactiver pour toutes les instances de CMD.EXE sur un
ordinateur et/ou pour une ouverture de session utilisateur en fixant avec
REGEDIT.EXE l'une ou les deux valeurs REG_DWORD suivantes du Registre :
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
et/ou
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
à la valeur hexadécimale d'un caractère de contrôle à utiliser pour une
fonction particulière (par exemple : 0x4 représente Ctrl+D et 0x6, Ctrl+F).
Les paramètres spécifiques de l'utilisateur sont prioritaires sur ceux de
l'ordinateur. Les options de la ligne de commande ont préséance sur les
paramètres du Registre.
Si la terminaison est activée avec l'option /F:ON, les deux caractères de
contrôle utilisés sont Ctrl+D pour la terminaison des noms de répertoire et
Ctrl+F pour la terminaison des noms de fichiers. Pour désactiver un caractère
de terminaison particulier dans le Registre, utilisez la valeur pour l'espace
(0x20) qui n'est pas valide en tant que caractère de contrôle.
La terminaison est appelée lorsque vous entrez l'un des deux caractères de
contrôle. La fonction de terminaison prend le chemin figurant à gauche du
curseur, y ajoute un caractère générique s'il n'y en a pas déjà et crée une
liste des chemins correspondants. Cette fonction affiche ensuite le premier
chemin de la liste. Si aucun chemin ne correspond, elle émet un son et
n'affiche rien. Ensuite, si vous pressez le même caractère de contrôle
plusieurs fois, vous verrez les chemins successifs correspondants de la liste
précédente. Si vous appuyez sur la touche Majuscule et le caractère de
contrôle, vous verrez la liste dans le sens contraire. Si vous modifiez la
ligne de quelque façon que ce soit et appuyez à nouveau sur le caractère de
contrôle, la liste enregistrée de chemins correspondants est ignorée et une
nouvelle liste est générée. De même, une nouvelle liste sera créée si vous
passez de la terminaison des noms de fichiers à celle des noms de répertoires.
La seule différence entre les deux caractères de contrôle est que la
terminaison des noms de fichiers fonctionne pour les noms de fichiers et les
noms de répertoires alors que la terminaison des noms de répertoires ne
fonctionne que pour les noms de répertoires. Si la terminaison des noms de
fichiers est utilisée sur des commandes de répertoires internes (CD, MD ou RD)
alors la terminaison des noms de répertoires est active.
Le code de terminaison traite correctement les noms de fichiers contenant des
espaces ou d'autres caractères spéciaux, en plaçant des guillemets autour des
chemins correspondants. Si vous reculez le curseur et appelez ensuite la
terminaison, le texte à droite du curseur lorsque la terminaison est demandée
est ignoré.
Les caractères spéciaux qui requièrent des guillemets sont :
&()[]{}^=;!'+,`~