in

Comment écrire un script batch sous Windows

Savez-vous comment utiliser l’invite de commande? Si vous le faites, vous pouvez écrire un fichier de commandes. Dans sa forme la plus simple, un fichier de commandes (ou script de commandes) est une liste de plusieurs commandes exécutées lorsque vous double-cliquez sur le fichier. Les fichiers batch remontent à DOS, mais fonctionnent toujours sur les versions modernes de Windows.

Les scripts PowerShell et les scripts Bash peuvent être plus puissants, mais les fichiers de commandes peuvent toujours être très utiles si vous devez exécuter des commandes Windows de base.

Notions de base sur les fichiers batch

Un fichier batch est simplement un fichier texte enregistré avec l’extension de fichier .bat. Vous pouvez en écrire un en utilisant le Bloc-notes ou un éditeur de texte plus avancé comme Bloc-notes ++, mais n’utilisez pas de traitement de texte comme Microsoft Word.

Créons un simple fichier batch. Tout d’abord, ouvrez le Bloc-notes. Tapez les lignes suivantes:

ECHO OFF
ECHO Hello World
PAUSE

Ensuite, enregistrez le fichier en cliquant sur Fichier> Enregistrer. Donnez-lui le nom de votre choix, mais remplacez l’extension de fichier .txt par défaut par l’extension .bat.

Par exemple, vous voudrez peut-être lui donner un nom hello_world.bat .

Vous disposez maintenant d’un fichier de commandes avec l’extension de fichier .bat. Double-cliquez dessus pour l’exécuter. Ce fichier de commandes particulier désactive ECHO (qui nettoie la sortie en masquant les commandes d’être imprimées à l’invite, imprime le texte «Hello World» à l’écran, puis attend que vous appuyiez sur une touche avant de se terminer.

Si vous n’avez pas ajouté PAUSE dans le fichier, le fichier de commandes exécuterait simplement ses commandes, puis se fermerait automatiquement. Dans ce cas, il afficherait «Hello World» dans la fenêtre, puis fermerait immédiatement la fenêtre d’invite de commandes. Lorsque vous souhaitez exécuter rapidement des commandes sans voir la sortie, vous pouvez l’omettre. Si vous exécutez plusieurs commandes, vous pouvez placer le PAUSE commande entre eux.

Ecrire un fichier batch plus complexe

Il est fondamentalement simple de créer un fichier batch. La seule chose que vous devez changer est ce que vous tapez dans le Bloc-notes. Pour exécuter plusieurs commandes, vous tapez chacune sur sa propre ligne et le fichier de commandes exécutera chacune dans l’ordre.

Par exemple, disons que nous voulons écrire un fichier batch qui exécute plusieurs commandes de diagnostic réseau. Nous pourrions vouloir courir ipconfig /all pour afficher les informations du réseau, ping google.com pour voir si les serveurs de Google répondent, et tracert google.com pour exécuter un traceroute vers google.com et voir s’il y a des problèmes en cours de route.

Dans la forme la plus basique, nous pourrions simplement placer toutes ces commandes dans un fichier batch, l’une après l’autre, comme ceci:

ipconfig /all
ping google.com
tracert google.com
PAUSE

Lorsque nous exécutons ce fichier, nous voyons simplement la sortie de chaque commande juste après l’autre. Mais ce n’est pas nécessairement le moyen idéal pour écrire un fichier batch.

Par exemple, vous souhaiterez peut-être ajouter des lignes de commentaire. Toute ligne commençant par un :: est une ligne de commentaire et ne sera pas exécutée. Cela en fait un moyen utile d’expliquer ce qui se passe dans le fichier pour toute personne à qui vous pourriez le donner – ou pour votre futur moi, qui pourrait oublier pourquoi vous y mettez une certaine commande.

Vous pouvez également ajouter la commande «ECHO OFF» au début du fichier. Ceci est généralement ajouté au début de la plupart des fichiers de commandes. Lorsque vous faites cela, les commandes elles-mêmes ne seront pas imprimées sur l’invite de commandes, mais les résultats le seront. Par exemple, vous verrez les détails de la connexion réseau mais pas la ligne «ipconfig / all». La plupart des gens ne se soucient pas de voir les commandes, donc cela peut nettoyer la sortie.

Alors, voici à quoi cela pourrait ressembler:

:: This batch file checks for network connection problems.
ECHO OFF
:: View network connection details
ipconfig /all
:: Check if Google.com is reachable
ping google.com
:: Run a traceroute to check the route to Google.com
tracert google.com
PAUSE

Il y a d’autres directions que vous pourriez emprunter avec un fichier batch comme celui-ci. Par exemple, vous souhaiterez peut-être que votre script de commandes exécute les commandes ci-dessus, puis vider la sortie dans un fichier texte que vous pourrez afficher ultérieurement. Pour ce faire, vous utiliseriez le >> opérateur après chaque commande pour ajouter sa sortie au fichier texte. Comme nous allons quand même lire la sortie du fichier texte, nous pouvons omettre le PAUSE commander.

:: This batch file checks for network connection problems
:: and saves the output to a .txt file.
ECHO OFF
:: View network connection details
ipconfig /all >>  results.txt
:: Check if Google.com is reachable
ping google.com >> results.txt
:: Run a traceroute to check the route to Google.com
tracert google.com >> results.txt

Après avoir exécuté le script ci-dessus, vous trouverez un fichier nommé results.txt dans le même dossier que le fichier de commandes avec la sortie des commandes. La fenêtre d’invite de commandes se fermera automatiquement une fois que le fichier de commandes sera exécuté.

L’exemple que nous utilisons ci-dessus repose sur l’impression des informations sur l’invite de commandes afin que l’utilisateur puisse les lire. Cependant, de nombreux fichiers de commandes sont conçus pour être exécutés de manière non interactive. Par exemple, vous pouvez avoir un fichier de commandes qui supprime plusieurs fichiers ou répertoires chaque fois que vous double-cliquez dessus. Il vous suffit d’utiliser le del commande pour supprimer des fichiers ou deltree commande pour supprimer des répertoires. N’oubliez pas que vous utilisez simplement les mêmes commandes que vous exécutez dans une fenêtre d’invite de commandes.

Fondamentalement, c’est le but de la plupart des fichiers batch – il suffit d’exécuter quelques commandes l’une après l’autre. Cependant, les fichiers batch peuvent en fait être beaucoup plus complexes que cela. Par exemple, vous pouvez utiliser des instructions « IF » avec le « ALLER À”Pour vérifier la valeur de quelque chose, puis passer à différentes lignes en fonction du résultat. Cela ressemble plus à l’écriture d’un petit programme réel qu’à un script rapide et sale. C’est l’une des raisons pour lesquelles les fichiers .bat sont parfois appelés «programmes par lots». Si vous voulez faire quelque chose de plus complexe, vous trouverez de nombreux guides pour faire des choses spécifiques avec la programmation par lots en ligne. Mais maintenant, vous connaissez les bases de la façon de lancer un simple ensemble.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Qu'est-ce que c'est et en quoi est-il différent du Wi-Fi 6?

Qu’est-ce que c’est et en quoi est-il différent du Wi-Fi 6?

Désautoriser tous les ordinateurs associés à votre compte iTunes

Désautoriser tous les ordinateurs associés à votre compte iTunes