Tutoriel sur la programmation Batch Par Adrien REBOISSON – http://www.astase.co
Tutoriel sur la programmation Batch Par Adrien REBOISSON – http://www.astase.com Seconde Édition Attention : ce tutoriel a été à l’origine écrit pour les personnes possédant Windows 95, Windows 98, ou Windows Me. L’intégration sous Windows NT étant différente (le terme « Windows NT » regroupant Windows NT, Windows 2000, ou Windows XP), nous vous conseillons si vous possédez Windows NT de lire ce tutoriel sans oublier l’annexe II qui détaille les différences majeures entre l’intégration Batch sous les distributions standard et les distributions NT de Windows. Table des matières I] Introduction Généralités Création de votre premier Batch Utilisation de PowerBatch II] Les bases de la programmation Batch L’écho Commenter son code Afficher du texte à l’écran Caractères spéciaux Effacer l’écran Utiliser la commande PAUSE III] Variables et paramètres Généralités Variables d’environnement Paramètres La variable %PATH% IV] Sauts, boucles Généralités La commande GOTO La commande LABEL V] Exécution conditionnelle Généralités et intérêt Les différentes formes de ces commandes et l'intérêt de leurs combinaisons : IF, IF NOT, IF EXIST… VI] Boucles La commande For… Do… VII] La compilation Généralités Comment compiler un fichier Batch Les erreurs de compilation VIII] Les bordures Générer des bordures en utilisant l'assistant dans PowerBatch IX] Redirections Écriture en mode ajout Écriture en mode écrasement Écriture de résultats de commande Redirection vers le périphérique virtuel NUL & autres Le caractère « pipe » Lecture dans les fichiers X] Appel d'autres fichiers Batch Utilisation de fichiers Batch comme sous-programme Lancement d'autres fichiers Batch XI] Travail avec ERRORLEVEL Utilisation de la commande ERRORLEVEL XII] 5 autres fonctions de PowerBatch Test ligne, test bloc, test pas à pas Les modèles L'assistant XCOPY La commande CHOICE Le convertisseur HTML XIV] Programmation avancée ANNEXE I] L’intégration MS-DOS sous Windows ANNEXE II] Batch sous Windows NT ANNEXE III] Mots clés ou notions à connaître abordés dans ce tutoriel Avertissement : Ce tutoriel n'a pas pour vocation de remplacer un livre dédié à la programmation Batch, mais surtout d'initier le programmeur débutant à cette technique. Il n'est pas exempt d'erreurs, si vous en repérez, merci de me contacter via le site web (http://www.astase.com) La version la plus récente de ce manuel sera toujours publiée sur http://www.astase.com 1°) Introduction Basiquement, un fichier Batch n'est rien de plus qu'un fichier texte contenant des commandes MS-DOS, et possédant le suffixe ".bat". Si vous ne connaissez pas MS-DOS ou n'avez jamais entendu parler de Autoexec.bat, passez votre chemin : en effet, la programmation Batch nécessite une connaissance minimum de l'environnement DOS. En fait, un fichier Batch contient simplement une suite de commandes que vous pourriez taper sous l'invité (prompt) du DOS, chaque nouvelle ligne du fichier correspondant à une nouvelle commande. Néanmoins, certaines commandes ne sont qu'utilisables dans les fichiers batch du fait de leur inutilité dans l'environnement de commande DOS. Leur utilité est, par exemple, quand il faut répéter toujours la même série de commandes. À titre d'exemple, nous pourrions évoquer le changement de répertoire et peut-être aussi la commande FORMAT qu'on fait souvent suivre de la commande CHKDSK pour vérifier si la disquette a bien été formatée. Exemple : Imaginons un fichier batch contenant les commandes suivantes : cd \ cd games superjeu.exe Cela aurait le même effet que si vous tapiez sous DOS les commandes suivantes : C:\Chemin> cd \ [Entrée] C:\> cd games [Entrée] C:\games> superjeu.exe [Entrée] L'intérêt des batch est donc d'automatiser des tâches répétitives effectuées sous DOS. Les fichiers batch sont donc très faciles à créer puisqu'un simple éditeur texte suffit (Comme EDIT, sous DOS) Les fichiers batch peuvent également utiliser toutes les commandes DOS, ce qui rend disponible pour le programmeur un grand nombre de fonctions. Enfin, leur taille est relativement légère par rapport à d'autres programmes, ce qui facilite leur transfert sur différents disques et supports de stockage. Cependant… - Le langage Batch n'est pas compilé, il est interprété par COMMAND.COM ce qui rend plus lent l'exécution de programmes batch par rapport à des applications écrites directement en langage machine, - Les fichiers Batch sont directement éditables, donc votre code n'est pas "protégé" à la copie par d'autres programmeurs, - Enfin, et surtout, des opérations élémentaires comme le traitement de chaînes de caractères, d'opérations mathématiques, etc… n'existent pas sous DOS, ce qui implique l'usage de programmes externes (s'ils existent, selon les cas). 2°) Création de votre premier Batch Un fichier Batch étant à la base un fichier texte, vous pouvez créer vos batchs avec n’importe quel éditeur de texte. Attention : un fichier batch est un fichier texte « brut » (*.txt) sans formatage particulier (gras, italique, souligné). Personnellement, je trouve inutile d’utiliser un programme aussi lourd que Microsoft Word pour écrire un minuscule bout de fichier ASCII ! Préférez le bon vieux Notepad (bloc-note Windows) ou le simpliste mais néanmoins utile EDIT sous DOS, si vous êtes puriste… Si vous débutez ou si vous souhaitez gagner du temps, je ne peux que vous conseiller d’utiliser PowerBatch, un programme que j’ai moi-même écrit et qui facilite le test et le déboggage de vos batchs. Ce tutoriel est plus axé sur l’écriture de vos Batchs avec PowerBatch, mais le langage étant le même que vous utilisiez Notepad ou PowerBatch, ce tutoriel pourra tout de même vous aider dans le cas où vous ne souhaiteriez pas utiliser mon application. PowerBatch est disponible sur http://www.astase.com. Prenons le cas simpliste ou vous souhaitez lister les fichiers DLL du répertoire de Windows (C:\WINDOWS). Vous entreriez sous DOS : C:\Chemin> cd \ [Entrée] C:\> cd WINDOWS [Entrée] C:\WINDOWS> DIR *.DLL [Entrée] Il vous suffit de taper dans un fichier texte les commandes précédentes, comme si vous les entriez sous le prompt MS-DOS : Facile, non ? La rédaction de votre Batch est terminée. À notre stade, nous avons créé un fichier texte – il faut maintenant le transformer en Batch. Là aussi, pas trop de difficultés : il suffit de changer son extension en .bat sous Windows. Dans notre exemple, test.txt devient donc test.bat. Maintenant, il ne vous reste plus qu’à tester votre Batch ! Un fichier Batch s’exécute sous MS-DOS. Si vous êtes sous MS-DOS, il vous suffit d’appeler le fichier dans la ligne commande. Si vous êtes sous Windows, c’est plus simple puisqu’il suffit de double-cliquer sur l’icône du Batch pour que celui-ci s’ouvre dans une console MS-DOS (Une parfaite simulation du DOS par Windows), et ne s’exécute aussitôt : Que s’est-il passé ? Que vous soyez sous Windows ou sous MS-DOS, c’est le même processus : le fichier batch est transmis à l’interpréteur COMMAND.COM, qui analyse chaque ligne du batch et exécute les commandes rencontrées. Comme vous pouvez le constater, la différence avec d’autres programmes Windows est de taille : alors que les exécutables « normaux » sont des fichiers binaires constitués de macro-instructions destinés directement au processeur, les fichiers batchs contiennent les commandes DOS « telles qu’elles », ce qui explique la nécessité d’un interpréteur pour « traduire » les commandes au processeur ;c’est le rôle de COMMAND.COM – il n’y a donc pas besoin de compiler le code. Si la fenêtre se ferme automatiquement sans vous laisser le temps de visualiser son résultat, rajoutez la commande « PAUSE » à la fin de votre batch. Même si vous ne comprenez pas encore cette commande, sachez que celle-ci demande une validation clavier avant de terminer le programme, ce qui vous laissera le temps de visualiser le contenu de la fenêtre. Comme dit auparavant, les Batchs ont été conçus et s’exécutent sous MS-DOS. Le terme MS-DOS rappelle pour certains la « préhistoire » de l’informatique moderne et peut conduire à un désintérêt total en pensant que le DOS est un système obsolète et désormais « enterré », qui ne mérite de nos jours plus grand intérêt. D’un côté c’est vrai : depuis l’avènement des OS graphiques comme Windows, MS- DOS est en phase de déclin et est de plus en plus abandonné, tant par les développeurs que les utilisateurs. Certains utilisateurs des dernières versions de Windows ignorent même jusqu’à l’existence du DOS ! Et pourtant, si le DOS à part entière n’a pas grand intérêt, la cohabitation MS- DOS/Windows est toujours de nos jours intéressante. Cherchez un langage simple pour automatiser vos opérations sous Windows : le système Batch est là ! Même sous Windows, et ce grâce au DOS, vous pourrez automatiser la plupart de vos opérations. Après la lecture de ce tutoriel, vous pourrez même je l’espère, développer de petits programmes complets et complexes. Pour aborder un tout autre point – certains peuvent se poser la question : Les fichiers batchs peuvent être dangereux pour mon système ? A priori, les fichiers Batch ne sont pas plus dangereux que n’importe quelle application DOS ou Windows. En plus, il suffit d’éditer le fichier pour visualiser son code et se rendre directement compte de la dangerosité potentielle de certaines commandes. Il convient toutefois de rester prudent avec les fichiers batchs de provenance non sûr (en pièce jointe transmise par e-mail par exemple). Etant donné qu’une seule commande peut détruire votre système (ou l’endommager uploads/Industriel/ tutoriel-batch 1 .pdf
Documents similaires










-
39
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Fev 08, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.2394MB