Menu
InformatiWeb
  • Index
  • Formations
  • Tutoriels
  • InformatiWeb Pro

Connexion

Inscription Mot de passe perdu ?
US
  • Informatique
    • Articles
    • BIOS
    • Live CD
    • MultiBoot
    • Sauvegardes
    • Sécurité
    • Virtualisation
    • Web
    • Windows
  • InformatiWeb
  • Tutoriels
  • Informatique
  • Windows
  • Comment automatiser des tâches sous Windows grâce aux fichiers batch
  • Windows
  • 30 mai 2013 à 10:58
  • Lionel

Comment automatiser des tâches sous Windows grâce aux fichiers batch

Les fichiers batch permettent d'automatiser une série d'actions sous Windows grâce à des commandes DOS qui seront interprétées par le programme "cmd.exe" présent dans toutes les versions de Windows.
Sous Windows, un fichier batch est un simple fichier texte avec une série de commandes et parfois des conditions (comme dans un vrai programme).

Petit conseil pour débuter avec les fichiers batch : utiliser un éditeur de texte comme Notepad++ pour bénéficier d'une coloration syntaxique et ainsi mieux vous y retrouver dans votre code.

  1. Commandes disponibles
  2. Conditions
  3. Désactiver l'affichage des commandes
  4. Changer le titre de la fenêtre DOS
  5. Apprendre à créer un fichier batch
  6. Bonus
    1. Demander à l'utilisateur d'entrer une valeur
    2. Récupérer une partie d'une variable
    3. Remplacer un caractère par un autre dans une variable

1. Commandes disponibles

Parmi les commandes disponibles, vous trouverez des commandes de bases :

  • CD : pour se déplacer dans un dossier ou un dossier parent avec en utilisant des "../"
  • DIR : pour la lister le contenu d'un dossier
  • MKDIR : pour créer des dossiers
  • RMDIR : pour les supprimer
  • COPY ou XCOPY : pour copier des fichiers
  • REN : pour renommer des fichiers ou des dossiers
  • DEL : pour supprimer des fichiers
  • ECHO : pour afficher une ligne de texte
  • ECHO. : pour afficher une ligne vide
  • ATTRIB : pour modifier les attributs d'un fichier
  • etc

Vous pouvez aussi utiliser des commandes réseau qui ne sont ni plus ni moins que le nom de chaque programme réseau disponible en ligne de commandes dans toutes les versions de Windows :

  • IPCONFIG : pour afficher la configuration TCP/IP de vos cartes réseau, vider le cache DNS (avec "/flushdns"), ...
  • PING : pour tester rapidement la connexion réseau entre 2 ordinateurs ou serveurs (si le PING est autorisé dans le pare-feu du PC source et celui de destination)
  • TRACERT : pour tester une connexion réseau et tenter de trouver où le paquet s'arrête sur le chemin
  • NSLOOKUP : pour obtenir l'adresse IP d'un serveur depuis son nom de domaine
  • NETSTAT : pour afficher les connexions réseau actives sur votre ordinateur
  • etc

Notez qu'il est aussi possible d'appeler un autre fichier batch depuis le vôtre en utilisant la commande "CALL".

Pour finir, sachez que vous pouvez ajouter "/?" après n'importe quelle commande pour obtenir la liste des paramètres disponibles pour celle-ci et des informations vous permettant de l'utiliser.

2. Conditions

Pour gérer certaines conditions dans un fichier batch, il existe des mots-clés IF, FOR, GOTO, ...

3. Désactiver l'affichage des commandes

Pour que votre programme soit plus agréable à utiliser, nous vous conseillons de masquer l'affichage des commandes.
Pour cela, il suffit d'ajouter cette ligne au début de votre fichier batch.

Batch

@echo off

Explications :

  • echo off : permet de désactiver l'affichage des commandes suivantes (ainsi que le chemin du dossier courant)
  • @ : permet de masquer la commande elle-même. Autrement dit, ne pas afficher le "echo off".

4. Changer le titre de la fenêtre DOS

Par défaut, lorsque vous lancez un fichier batch, le titre de la fenêtre est "C:\Windows\System32\cmd.exe".
Pour afficher un titre personnalisé, il suffit d'utiliser la commande "title" comme ceci :

Batch

title Nom du programme

5. Apprendre à créer un fichier batch

Pour apprendre en profondeur comment créer des fichiers batch professionnels avec des conditions, des variables, des boucles, ... nous vous recommandons d'aller sur le site "Batcher" qui explique de A à Z tout ce qu'il faut savoir au sujet des fichiers batch.

6. Bonus

6.1. Demander à l'utilisateur d'entrer une valeur

Pour demander à l'utilisateur d'entrer une valeur, vous devez utiliser la commande SET comme ceci :

Batch

@echo off
REM On demande à l'utilisateur d'entrer une valeur. Paramètre /p
REM Note : Pensez à laisser un espace à la fin de la ligne pour ne pas que le texte
REM ne se colle au texte du programme.
Set /p val=Entrez une valeur: 
REM Puis, on affiche la valeur que l'utilisateur a entrée.
echo Vous avez ecrit : %val%
pause

6.2. Récupérer une partie d'une variable

Récupérer une partie d'une variable peut être utile dans plusieurs cas et notamment pour récupérer les différents morceaux d'une date, l'extension d'un fichier depuis son nom complet, ...

Bref, voici comment cela fonctionne :

Batch

REM La ligne ci-dessous va récupérer les caractères de la variable spécifiée à partir de l'index 5
REM et sur une longueur de 2 caractères. Puis, elle va afficher le résultat dans la console.
echo %nom_de_la_variable:~5,2%

Grâce à cette syntaxe, nous pouvons récupérer le jour, le mois, l'année, l'heure, les minutes, ... depuis la date et l'heure actuelle.

Batch

@echo off
REM Date entière. Par exemple, sous Windows 7, cette variable contient ceci : jeu. 30/05/2013
echo Date : %date%
echo Jour : %date:~5,2%
echo Mois : %date:~8,2%
echo Annee : %date:~11,4%
REM Echo. affiche une ligne vide.
echo.

REM Temps. Par exemple, sous Windows 7, cette variable contient ceci : 11:12:36,67
echo Temps : %time%
echo Heure : %time:~0,2%
echo Minutes : %time:~3,2%
echo Secondes : %time:~6,2%
echo Centiemes de secondes : %time:~9,2%
pause

6.3. Remplacer un caractère par un autre dans une variable

Pour remplacer un caractère par un autre dans une variable, il faut utiliser la syntaxe suivante :

Batch

REM La ligne ci-dessous va remplacer les caractères / par des -. Puis, elle va afficher le texte dans la console.
REM Ce type de remplacement est par exemple utile pour indiquer la date dans un nom de fichier,
REM car les / n'y sont pas autorisés.
echo %nom_de_la_variable:/=-%

Partager ce tutoriel

Partager
Tweet

A voir également

  • Configurer le pare-feu de votre ordinateur

    Windows 15/2/2013

    Configurer le pare-feu de votre ordinateur

  • Windows 10 / 11 - Chiffrer des données grâce à EFS

    Windows 1/12/2023

    Windows 10 / 11 - Chiffrer des données grâce à EFS

  • Windows 8 / 8.1 - Configurer les programmes par défaut

    Windows 14/9/2021

    Windows 8 / 8.1 - Configurer les programmes par défaut

  • Windows 8.1 - Utiliser un casque Bluetooth

    Windows 26/10/2024

    Windows 8.1 - Utiliser un casque Bluetooth

Commentaires

Vous devez être connecté pour pouvoir poster un commentaire

Donnez-nous votre avis

Contenu épinglé

  • Logiciels utiles
  • Nos programmes
  • Conditions générales
  • Donnez votre avis

InformatiWeb Pro

  • Administration Win. Server
  • Administration Linux
  • Virtualisation

Contact

  • Livre d'or
  • Support technique
  • Contact

® InformatiWeb.net 2008-2022 - © Lionel Eppe - Tous droits réservés.

Toute reproduction totale ou partielle de ce site est interdite et constituerait une contrefaçon sanctionnée par les articles L.335-2 et suivants du Code de la propriété intellectuelle.