420-1Q1-AA Help

Le scripting (batch)

Les fichiers de commande (.bat) sous Windows

Les fichiers de commandes sous Windows, aussi appelés fichiers batch (fichiers .bat), sont des scripts contenant une série de commandes exécutées séquentiellement par l'interpréteur de commandes de Windows (Command Prompt ou cmd.exe). Ces fichiers permettent d'automatiser des tâches répétitives, d'exécuter plusieurs commandes à la suite et de configurer des processus système de manière efficace.

Qu’est-ce qu’un fichier batch (.bat) ?

Un fichier batch est simplement un fichier texte contenant une liste de commandes. Lorsqu'il est exécuté, le fichier batch envoie ces commandes à l'interpréteur de commandes de Windows, qui les exécute dans l'ordre. Le fichier batch porte l'extension .bat ou .cmd et peut être créé à l'aide d'un simple éditeur de texte, comme le Bloc-notes.

Pourquoi utiliser des fichiers batch ?

  • Automatisation: Un fichier batch permet d'exécuter des commandes répétitives ou des tâches planifiées sans avoir à les taper manuellement à chaque fois.

  • Administration système: Les administrateurs peuvent utiliser des fichiers batch pour exécuter des scripts de gestion, de configuration ou de maintenance sur plusieurs machines.

  • Simplification: Plutôt que d'exécuter une série de commandes manuellement dans l’invite de commande, un fichier batch permet de les exécuter en une seule fois.

Structure d’un fichier batch

Un fichier batch est constitué d'une série de commandes système standard. Voici un exemple simple de fichier batch :

@echo off echo Bonjour, bienvenue dans le fichier batch cd C:\Dossier\Exemple dir pause
  • @echo off: Cette commande désactive l'affichage des commandes dans la fenêtre. Seuls les résultats des commandes s'affichent.

  • echo: Affiche du texte dans la fenêtre de commandes.

  • cd: Change le répertoire de travail.

  • dir: Affiche la liste des fichiers dans le répertoire courant.

  • pause: Suspend l'exécution du fichier batch et attend que l'utilisateur appuie sur une touche pour continuer.

Création d’un fichier batch

  1. Ouvrez le Bloc-notes (ou tout autre éditeur de texte simple).

  2. Tapez les commandes que vous souhaitez exécuter. Par exemple :

    @echo off echo Démarrage de l'automatisation... mkdir C:\Backup xcopy C:\MesDocuments\*.* C:\Backup /s /y echo Sauvegarde terminée. pause
  3. Enregistrez le fichier avec l'extension .bat.

  4. Exécutez le fichier en double-cliquant dessus ou en l'appelant depuis l'invite de commande.

Commandes courantes dans un fichier batch

  • echo: Affiche un message ou active/désactive l'affichage des commandes.

  • pause: Met en pause l'exécution jusqu'à ce que l'utilisateur appuie sur une touche.

  • cls: Efface l'écran de la console.

  • cd: Change de répertoire.

  • dir: Affiche la liste des fichiers et dossiers dans le répertoire courant.

  • del: Supprime des fichiers.

  • xcopy: Copie des fichiers et des répertoires.

  • start: Lance une application ou un autre programme batch.

  • shutdown: Permet d'éteindre ou de redémarrer l'ordinateur.

  • if: Permet d'exécuter des commandes conditionnelles.

  • for: Crée une boucle pour exécuter une commande sur plusieurs fichiers ou dossiers.

Exemples de fichiers batch

  1. Nettoyage de fichiers temporaires

    @echo off echo Nettoyage des fichiers temporaires en cours... del /s /q %TEMP%\* echo Nettoyage terminé. pause
  2. Sauvegarde automatique

    @echo off echo Sauvegarde des documents en cours... xcopy C:\MesDocuments\*.* D:\Sauvegarde /s /y echo Sauvegarde terminée. pause
  3. Script de démarrage de programme

    @echo off echo Démarrage des programmes... start notepad.exe start chrome.exe echo Programmes démarrés. pause

Variables dans un fichier batch

Les fichiers batch permettent également d'utiliser des variables :

  • %username%: Renvoie le nom d'utilisateur actuel.

  • %date% et %time%: Renvoient la date et l'heure actuelles.

  • set: Permet de créer et d'utiliser des variables personnalisées.

Exemple avec une variable personnalisée :

@echo off set nom_utilisateur=John echo Bonjour %nom_utilisateur%, bienvenue ! pause

Exécuter des commandes conditionnelles

Les fichiers batch peuvent utiliser des instructions conditionnelles pour exécuter des commandes selon certaines conditions. Par exemple, la commande if peut être utilisée ainsi :

@echo off set /p choix="Souhaitez-vous effectuer une sauvegarde ? (o/n) : " if %choix%==o ( echo Sauvegarde en cours... xcopy C:\MesDocuments\*.* D:\Sauvegarde /s /y echo Sauvegarde terminée. ) else ( echo Aucune action n'a été effectuée. ) pause

Avantages des fichiers batch

  • Simplicité: Un fichier batch est facile à écrire et ne nécessite pas d'outils de développement avancés.

  • Automatisation: Il permet d'automatiser des tâches répétitives avec un minimum d'effort.

  • Compatibilité: Les fichiers batch fonctionnent sur presque toutes les versions de Windows.

  • Modularité: Ils peuvent être modifiés rapidement pour s’adapter à différents environnements.

Limitations

  • Interface textuelle: Les fichiers batch ne sont pas graphiques et nécessitent souvent une connaissance des commandes de l'invite de commande.

  • Capacités limitées: Comparés à des langages de script plus avancés comme PowerShell ou Python, les fichiers batch ont des capacités limitées.

  • Debugging difficile: Si une erreur se produit, il peut être difficile de la diagnostiquer dans un fichier batch sans outils spécialisés.

En résumé, les fichiers batch sont un moyen puissant et simple pour automatiser des tâches sous Windows. Bien qu'ils aient des limitations, ils sont largement utilisés pour des tâches de maintenance, de gestion de fichiers, et d'administration système.

Last modified: 07 October 2024