IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

La ligne de commande Windows et les fichiers batch

Date de publication : 6 avril 2009


XXX. Astuces pour l'utilisation de l'invite de commande Windows
XXX-A. Comment afficher une ligne vide dans un fichier batch
XXX-B. Forcer "echo" à ne pas parcourir les arguments
XXX-C. Vérifier si un fichier existe
XXX-D. L'utile périphérique "nul"
XXX-E. Arrêter une commande en cours d'exécution
XXX-F. Mettre en pause le défilement de l'écran
XXX-G. Utiliser le glisser-déplacer
XXX-H. Remonter au répertoire parent
XXX-I. Comment changer le répertoire de travail courant vers un répertoire d'un autre disque
XXX-J. Attention aux espaces dans les noms des fichiers et des dossiers
XXX-K. Traitement spécial des variables pour l'instruction "for" dans les fichiers batch
XXX-L. Variables sensibles à la casse dans les instructions "for"
XXX-M. Mettre un raccourci vers une ligne de commande dans le Menu Démarrer
XXX-N. Créer un raccourci vers une commande
XXX-O. Ouvrir l'explorateur Windows à partir de la ligne de commande
XXX-P. Utilisation de la commande "Start"
XXX-Q. Utilisez la complétion de nom de fichier et de nom de dossier
XXX-R. Activer le mode d'édition rapide pour la fenêtre de commande
XXX-S. Afficher l'historique des commandes
XXX-T. Utiliser la commande "sleep" dans les fichiers batch sous Windows XP.
XXX-U. Copier du texte à partir de la fenêtre de commande
XXX-V. Astuces pour la console de commande de Vista


XXX. Astuces pour l'utilisation de l'invite de commande Windows

info Ce chapitre est une traduction de la page en http://commandwindows.com/tipsandtricks.htm dont l'auteur original est Victor Laurie.
Ce chapitre va vous présenter quelques trucs et astuces utiles dans l'utilisation de la console de commandes Windows.

Il existe certaines astuces dont les livres sur l'invite de commande ne parlent pas. Ou, s'ils le font, la description est enterrée dans un paragraphe discret. Les utilisateurs expérimentés de la ligne de commande connaissent ces astuces. Cependant, la plupart des utilisateurs lambda ne les connaissent pas et je vais donc donner ici quelques "trucs" utiles pour eux. D'après ce que je sais, les astuces que je vais donner fonctionnent dans Windows XP et Windows Vista (sauf les cas indiqués). Ces astuces peuvent ne pas fonctionner pour des versions antérieures de Windows. Les astuces spécifiques à Vista sont données sur une autre page.


XXX-A. Comment afficher une ligne vide dans un fichier batch

Parfois, vous souhaitez afficher dans la console une ou deux lignes blanches. Il n'est pas évident de savoir comment faire... Entrer simplement la commande "echo" ne fonctionnera pas parce qu'elle va afficher le statut actuel de echo. L'astuce est d'entrer
echo.
Notez que "echo" est suivie d'un point sans espace entre echo et le point.


XXX-B. Forcer "echo" à ne pas parcourir les arguments

L'astuce précédente est un cas particulier d'un mode d'utilisation plus général de la commande "echo". Bien que la commande est utilisée pour afficher du texte ou des messages, elle peut aussi prendre des arguments tels que "on" ou "off". Si vous tapez
echo off
vous n'allez pas afficher la chaîne "off" mais configurer la commande "echo" elle-même. Pour afficher la chaîne "off", vous devez utiliser
echo. off
En d'autres termes, placer un point à la fin de "echo" force la commande à afficher ce qu'il y a sur la suite de la ligne, sans vérifier si la chaîne est un cas particulier.


XXX-C. Vérifier si un fichier existe

Une variante spéciale de l'instruction "if" peut être utilisée pour savoir si un fichier existe déjà. L'instruction à utiliser est :
if exist unFichier uneCommande
L'instruction peut également tester l'absence d'un fichier :
if not exist unFichier uneCommande

XXX-D. L'utile périphérique "nul"

Le périphérique invisible appelé "nul" peut être utilisé de plusieurs manières. (il est parfois appelé "trou noir"). Tout ce qui y est envoyé disparait. Il peut être utilisé dans les instructions quand vous ne voulez pas que leurs sorties soient affichées. Par exemple, la commande
uneCommande > nul
va exécuter "uneCommande" mais toute la sortie de la commande sera envoyée aux oubliettes. Vous souhaitez parfois, dans un fichier batch, qu'aucun message d'erreur éventuel ne s'affiche. Ceci est obtenu en utilisant
uneCommande 2> nul
Nul peut également être appliqué à une commande qui fonctionne normalement sur les fichiers pour lui faire utiliser un répertoire à la place. Par exemple, il est parfois utile de tester si un répertoire existe. L'instruction
if exist unFichier uneCommande
va vérifier l'existence d'un fichier mais ne fonctionnera pas pour un répertoire. Heureusement, tous les répertoires contiennent le périphérique "nul", ainsi, vous pouvez utiliser le code suivant pour tester si un répertoire existe déjà :
if exist unRepertoire\nul

XXX-E. Arrêter une commande en cours d'exécution

Parfois, vous démarrez une commande et vous vous apercevez qu'elle vous renvoie de grandes quantités d'information sur l'écran. La plupart du temps, vous pouvez terminer la commande en pressant simultanément les touches "Ctrl" et "C".


XXX-F. Mettre en pause le défilement de l'écran

Si vous utilisez une commande qui renvoie beaucoup de données en sortie, vous pouvez mettre en pause le défilement afin de pouvoir lire ce qui est écrit à l'écran. Pour cela, utilisez la combinaison de touches "Ctrl+S" Pour continuer le défilement, appuyez à nouveau sur "Ctrl+S".


XXX-G. Utiliser le glisser-déplacer

Le fait de devoir taper le chemin complet vers un fichier est une source d'erreur. La plupart des gens ne savent pas qu'il est possible de faire glisser un fichier à partir de l'explorateur Windows vers la console pour que le chemin complet du fichier apparaisse. Cela permet d'économiser du temps de frappe. (Ne fonctionne pas dans Vista)


XXX-H. Remonter au répertoire parent

Les utilisateurs d'Unix connaissent cette syntaxe mais certains utilisateurs de Windows ne la connaissent pas. Pour remonter au répertoire parent du répertoire actuel, entrez
cd ..
Vous pouvez répéter cette commande pour remonter les niveaux jusqu'à la racine du disque. Vous pouvez également entrer deux points ".." dans la fenêtre Démarrer->Exécuter cela ouvrira le répertoire parent du répertoire de travail par défaut (il s'agit en général de %USERPROFILE%).


XXX-I. Comment changer le répertoire de travail courant vers un répertoire d'un autre disque

Si vous voulez changer le répertoire de travail d'une fenêtre d'invite de commande vers un dossier situé sur un autre disque, la commande "cd" ne fonctionnera pas. Vous devez d'abord entrer la lettre du lecteur suivie de deux-points (:) puis utiliser la commande "cd" suivie du chemin. Cependant, vous pouvez utiliser le commutateur /d pour changer le répertoire courant :
cd /d E:\test
Vous pouvez également effectuer le changement avec une seule commande si vous utilisez "pushd" à la place de "cd" :
pushd E:\test

XXX-J. Attention aux espaces dans les noms des fichiers et des dossiers

L'invite de commande ne reconnaît pas les espaces dans les chemins. Tous les chemins comportant des espaces doivent être entourés de guillemets ("). Ce problème revient souvent dans les scripts lorsque certaines variables d'environnement ou des arguments d'entrée sont utilisés. Par mesure de précaution, les variables qui contiennent des noms de fichiers ou de dossiers doivent être placées entre guillemets.


XXX-K. Traitement spécial des variables pour l'instruction "for" dans les fichiers batch

L'instruction "for" est souvent utile car elle fournit un moyen puissant d'effectuer des itérations. Cette commande a la particularité de nécessiter l'utilisation de doubles signes pourcent pour les itérations dans les fichiers batch. En d'autres termes, la syntaxe dans un fichier batch est :
for %%variable In set Do commande
Si une boucle "for" est exécutée directement depuis l'invite de commande, seul un signe pourcent est utilisé. La syntaxe est alors :
for %variable In set Do commande

XXX-L. Variables sensibles à la casse dans les instructions "for"

Contrairement aux systèmes Unix, Windows n'est généralement pas sensible à la casse, cependant, les variables utilisées dans les instructions "for" sont sensibles à la casse. Donc une variable %A est différente de %a.


XXX-M. Mettre un raccourci vers une ligne de commande dans le Menu Démarrer

Si vous utilisez fréquemment l'invite de commandes, vous pouvez créer un raccourci facilement accessible. Ouvrez Démarrer-->Tous les programmes-->Accessoires et faites un clic-droit sur "Invite de commandes". Choisissez "Ajouter au menu Démarrer" dans le menu contextuel. Vous pouvez aussi aller dans \WINDOWS\system32 et effectuer un clic droit sur le fichier de l'interpréteur de commande cmd.exe et choisissez "Ajouter au menu Démarrer" dans le menu contextuel.


XXX-N. Créer un raccourci vers une commande

Si vous utilisez fréquemment une commande, vous pouvez créer un raccourci vers celle-ci. L'astuce est d'utiliser le commutateur /k pour que l'invite de commande reste ouvert. La commande pour le raccourci est :
cmd /k uneCommande.exe
(Vous trouverez plus de détails sur la façon de créer un raccourci sur cette page).


XXX-O. Ouvrir l'explorateur Windows à partir de la ligne de commande

Pour ouvrir l'explorateur Windows sur le répertoire courant de l'invite de commande, utilisez la commande
start .
Pour ouvrir le répertoire parent, utilisez la commande
start ..

XXX-P. Utilisation de la commande "Start"

L'astuce précédente est un exemple d'utilisation de la commande "start" utilisée pour appeler une action, un dossier système ou une URL. Par exemple, vous pouvez taper "cookies" dans "Démarrer->Exécuter" pour ouvrir le répertoire système contenant les cookies (fonctionne dans Windows XP mais pas dans Vista). Toutefois, dans l'invite de commande, vous devez entrer
start cookies
Dans Vista, la commande doit être modifiée avec la commande Shell et sera donc :
start shell:cookies
De même, vous pouvez ouvrir un programme tel que Microsoft Word avec la commande
start winword
Vous pouvez également ouvrir une page Web dans internet Explorer en utilisant une commande du type
start http://monsite.com

XXX-Q. Utilisez la complétion de nom de fichier et de nom de dossier

La fonction d'auto-complétion des noms et des chemins vous économisera de la frappe. Cette fonctionnalité utilise la touche Tab pour compléter automatiquement le nom de fichier que vous avez commencé à taper. Par exemple, tapez "a" (sans guillemets) dans l'invite de commande et tapez sur la touche Tab. Windows va alors compléter votre saisie avec le nom d'un fichier ou d'un dossier existant commençant par "a", en le sélectionnant par ordre alphabétique. Appuyez sur la touche Tab à nouveau pour afficher le nom de fichier ou de dossier suivant (commençant par "a"). De cette façon, vous pouvez boucler sur tous les fichiers et dossiers existant dans le chemin courant qui commence avec un caractère particulier ou un groupe de caractères. La combinaison de touches Shift+Tab permet de parcourir la liste dans l'ordre inverse. La fonction de complétion peut être utilisée à n'importe quel endroit d'une commande.


XXX-R. Activer le mode d'édition rapide pour la fenêtre de commande

Il est pratique d'effectuer du copier-coller à partir de la fenêtre d'invite, mais cette fonctionnalité n'est pas activée par défaut. J'utilise cette fonction fréquemment et je vous suggère de l'activer pour toutes vos fenêtres d'invite de commande. Vous trouverez plus de détail sur l'activation de l'édition rapide sur une autre page. Une fois que l'édition rapide est activée, le contenu du presse-papier peut être collé dans l'invite de commande en effectuant un clic-droit sur la fenêtre de commande.


XXX-S. Afficher l'historique des commandes

Le réglage par défaut de la configuration de la fenêtre de commande inclus la possibilité de mémoriser jusqu'à 50 commandes tapées. L'historique des commandes peut être affiché en appuyant sur la touche "F7".


XXX-T. Utiliser la commande "sleep" dans les fichiers batch sous Windows XP.

Parfois, il est pratique d'attendre un certain temps dans un fichier batch entre deux commandes. Si vous téléchargez les outils gratuits Windows Server 2003 (décrits sur une autre page), vous trouverez l'outil sleep.exe qui fournit un moyen d'attendre un certain temps dans un fichier batch. Pour un intervalle de n secondes, la commande est :
sleep n

XXX-U. Copier du texte à partir de la fenêtre de commande

A l'époque de DOS, il n'était pas rare d'entrer du texte directement de l'invite de commande dans un fichier avec la commande "copy". C'est moins utilisé dans Windows mais il est toujours possible de le faire. La sortie de la fenêtre de commande ou de la console est appelée CON. (non sensible à la casse). Pour copier du texte depuis l'invite de commande vers un fichier "untexte.txt", la séquence d'instruction sera :
copy con untexte.txt
Première ligne du fichier souhaité
encore un peu de texte...
^Z
La dernière ligne indique la combinaison de touches "Ctrl+Z" suivie de la touche Entrée. Cette commande termine la séquence et envoie le texte au fichier qui sera automatiquement créé. Dans cet exemple particulier, le fichier est placé dans le répertoire courant mais d'autres emplacements peuvent être utilisés.


XXX-V. Astuces pour la console de commande de Vista

Windows XP et Vista ont la plupart de leurs lignes de commande en commun. Toutefois, il existe certaines différences. Les astuces spécifiques à Windows Vista sont données au chapitre suivant.

 

Valid XHTML 1.0 TransitionalValid CSS!

Copyright traduction ©2009 Thomas Garcia. Aucune reproduction, même partielle, ne peut être faite de cette traduction et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 Euros de dommages et intérets.
Copyright site web original : Victor Laurie