phhsnews.com


phhsnews.com / Comment écrire un script batch sous Windows

Comment écrire un script batch sous Windows


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

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

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 à l'aide du Bloc-notes ou d'un éditeur de texte plus avancé tel que Notepad ++, mais n'utilisez pas de traitement de texte comme Microsoft Word.

Créons un fichier batch simple. D'abord, ouvrez le Bloc-notes. Tapez les lignes suivantes dans celui-ci:

ECHO OFF ECHO Hello World PAUSE

Ensuite, enregistrez le fichier en cliquant sur Fichier> Enregistrer. Donnez-lui le nom que vous voulez, mais remplacez l'extension .txt par défaut par l'extension .bat.

Par exemple, vous pouvez le nommerhello_world.bat.

Vous avez maintenant un fichier batch avec l'extension de fichier .bat. Double-cliquez dessus pour l'exécuter. Ce fichier batch particulier éteint ECHO (qui nettoie la sortie en masquant les commandes à imprimer à l'invite, imprime le texte "Hello World" à l'écran, puis attend que vous appuyiez sur une touche avant qu'elle ne se termine.

Si vous n'avez pas ajoutéPAUSEau fichier, le fichier de commandes exécutera simplement ses commandes et se fermera automatiquement, dans ce cas, il affichera "Hello World" dans la fenêtre, puis fermera immédiatement le fichier. Lorsque vous voulez exécuter rapidement des commandes sans voir la sortie, vous pouvez omettre ceci: Si vous exécutez plusieurs commandes, vous pouvez placer la commandePAUSEentre elles.

Écrire une commande 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 batch sera exécuté un dans l'ordre.

Par exemple, disons que nous voulons écrire un fichier batch qui exécute plusieurs diagnostics réseau commandes tic. Nous souhaitons peut-être exécuteripconfig / allpour afficher les informations réseau,ping google.compour voir si les serveurs de Google répondent ettracert google.compour les exécuter un traceroute pour google.com et voir s'il y a des problèmes sur le chemin.

Dans la forme la plus basique, nous pourrions simplement placer toutes ces commandes dans un fichier séquentiel, 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 juste la sortie de chaque commande juste après l'autre. Mais ce n'est pas forcément le moyen idéal pour écrire un fichier batch.

Par exemple, vous pouvez ajouter des lignes de commentaire. Toute ligne commençant par::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, qui pourrait oublier pourquoi vous avez mis une certaine commande ici.

Vous pourriez aussi vouloir ajouter le " ECHO OFF "commande au début du fichier. Ceci est généralement ajouté au début de la plupart des fichiers batch. Lorsque vous faites cela, les commandes elles-mêmes ne seront pas imprimées à 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".

Voici à quoi cela pourrait ressembler:

:: Ce fichier de commandes vérifie les problèmes de connexion réseau. ECHO OFF :: Afficher les détails de connexion réseau ipconfig / all :: Vérifier si Google.com est accessible ping google.com :: Exécuter un traceroute pour vérifier l'itinéraire vers Google.com tracert google.com PAUSE

Il existe d'autres directions pourrait aller avec un fichier de commandes comme celui-ci. Par exemple, vous souhaiterez peut-être que votre script de traitement par lots exécute les commandes ci-dessus, puis affichez la sortie dans un fichier texte que vous pourrez afficher plus tard. Pour ce faire, vous utiliserez 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 la commandePAUSE

:: Ce fichier batch vérifie les problèmes de connexion réseau :: et enregistre la sortie dans un fichier. fichier txt. ECHO OFF :: Voir les détails de connexion réseau ipconfig / all >> results.txt :: Vérifiez si Google.com est joignable ping google.com >> results.txt :: Exécutez un traceroute pour vérifier l'itinéraire vers 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 batch avec la sortie des commandes. La fenêtre Invite de commandes se ferme automatiquement une fois le fichier batch exécuté

L'exemple que nous utilisons ci-dessus repose sur l'impression d'informations dans l'invite de commande afin que l'utilisateur puisse les lire. Cependant, de nombreux fichiers batch sont conçus pour être exécutés de manière non interactive. Par exemple, vous pouvez avoir un fichier batch qui supprime plusieurs fichiers ou répertoires chaque fois que vous double-cliquez dessus. Vous devez simplement utiliser la commandedelpour supprimer des fichiers ou la commandedeltreepour supprimer des répertoires. Souvenez-vous que vous utilisez simplement les mêmes commandes que celles que vous exécutez dans une fenêtre d'invite de commandes.

Fondamentalement, c'est le point de la plupart des fichiers de commandes, exécutant quelques commandes les unes après les autres. Cependant, les fichiers de traitement par lots peuvent en réalité être beaucoup plus complexes que cela. Par exemple, vous pouvez utiliser les instructions "IF" avec la commande "GOTO" pour vérifier la valeur de quelque chose, puis passer à différentes lignes en fonction du résultat. C'est plus comme écrire 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 batch". 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 jeter un simple ensemble.


Comment protéger les documents et les fichiers PDF avec Microsoft Office

Comment protéger les documents et les fichiers PDF avec Microsoft Office

Microsoft Office vous permet de chiffrer vos documents Office et vos fichiers PDF, ne permettant même à personne d'afficher le fichier sans mot de passe. Les versions modernes d'Office utilisent un cryptage sécurisé sur lequel vous pouvez compter, en supposant que vous ayez défini un mot de passe fort.

(how-to)

Découvrez si deux cellules dans Excel contiennent exactement les mêmes valeurs numériques

Découvrez si deux cellules dans Excel contiennent exactement les mêmes valeurs numériques

À l'instar d'une base de données bidimensionnelle (ou plate), Excel est capable de stocker de nombreux types de données, allant des contacts de petites entreprises aux dossiers d'impôt sur le revenu des particuliers. Dans ces deux exemples, la précision est essentielle pour vous assurer d'avoir les informations dont vous avez besoin quand vous en avez besoin.Dans

(How-to)