.......................................

et

http://scudo.chez.com/Faq/dos/

http://www.merlyn.demon.co.uk/batfiles.htm ............................ http://lipas.uwasa.fi/~ts/http/http2.html

 

Les Bases du langage BATCH

Partie 1 : Présentation générale

Partie 2 : La commande echo

Partie 3 : La commande pause

Partie 4 : La commande help

Partie 5 : Commandes diverses

________________________________

Le langage Batch a pour extension le .bat.

Il se programme en lignes de commandes DOS, il n'y a pas besoin de logiciels spécifiques puisqu'on peut le créer avec juste un éditeur de texte comme le bloc-notes. Pour commencer vous pouvez taper dans votre bloc-notes :

@echo off

echo Bonjour

pause

Puis vous enregistrez en Bonjour.bat par exemple. (N'oubliez pas de choisir "Tous les fichiers" dans la barre blanche sous Bonjour.bat).

Ouvrez-le et vous verrez une fenêtre de console s'ouvrir avec "Bonjour" inscrit sur un fond noir

@echo off <- permet d'enlever les commandes vous pouvez essayer avec

@echo on ce qui affichera les commandes

echo Bonjour <- permet d'afficher Bonjour sur la console

pause <- permet de mettre en pause l'exécution du .bat. Vous pouvez essayer sans,

mais vous n'aurez pas le temps de lire ce qui est écrit.

@echo off

echo Bonjour

echo ça va ?

echo Au revoir

pause

**************************************************************************************************************

________________________________

Vous pouvez constater que la commande echo est affichée plusieurs fois.

Cette commande a plusieurs fonctions :

@echo off/on         Celle-ci cache ou affiche les commandes

echo message         Celle-là affiche un message

echo.                Celle-ci saute une ligne

echo message> "Chemindufichier.ext"     Celui-ci inscrit un texte dans un fichier

[Il ne faut pas oublier l'extension (ici .ext), car sinon elle est considérée comme un dossier]

echo                Ce dernier indique si les commandes sont affichées ou non.

________________________________

Vous remarquerez que quand vous indiquez pause la console affiche :

Appuyez sur une touche pour continuer...

Mais vous pouvez afficher à la place un autre texte ou même rien du tout :

en utilisant pause>nul ce qui n'affichera rien du tout.

en utilisant echo votre instruction avant d'inscrire pause>nul, qui fera comprendre à l'utilisateur qu'il faut appuyer sur une touche pour continuer le déroulement du programme.

En utilisant cette dernière formule, à la place de pause tout seul, vous pouvez

personnaliser le message standard :

Appuyez sur une touche pour continuer...

________________________________

 

Parmi toutes les commandes du DOS, il y en a une nommée help mais ce n'est pas la peine

d'ouvrir un fichier texte pour l'utiliser :

Ouvrez exécuter (il se trouve dans le menu démarrer) et tapez dans exécuter :

cmd

Une fenêtre s'ouvre, remarquez que c'est la même que quand vous exécutez un Batch.

Voici un exemple ^

Après le > , tapez help, toutes les commandes s'afficheront :

Pour plus d'informations sur une commande spécifique, entrez le nom de la commande
de HELP.
 

ASSOC Affiche ou modifie les applications associées aux extensions de
fichiers.
AT Planifie l'exécution de commandes ou programmes sur un ordinateur.
ATTRIB Affiche ou modifie les attributs d'un fichier.
BREAK Active ou désactive le contrôle étendu de CTRL+C.
CACLS Affiche ou modifie les listes de contrôles d'accès aux fichiers.
CALL Appelle un fichier de commandes depuis un autre fichier de commandes.
CD Modifie le répertoire ou affiche le répertoire en cours.
CHCP Modifie la page de code active ou affiche son numéro.
CHDIR Modifie le répertoire ou affiche le nom du répertoire en cours.
CHKDSK Vérifie un disque et affiche un relevé d'état.
CHKNTFS Affiche ou modifie la vérification du disque au démarrage.
CLS Efface l'écran.
CMD Lance une nouvelle instance de l'interpréteur de commandes de Windows.
COLOR Modifie les couleurs du premier plan et de l'arrière plan de la
console.
COMP Compare les contenus de deux fichiers ou groupes de fichiers.
COMPACT Modifie ou affiche la compression des fichiers sur une partition NTFS.
CONVERT Convertit des volumes FAT en volumes NTFS. Vous ne pouvez pas
convertir le lecteur en cours d'utilisation.
COPY Copie un ou plusieurs fichiers.
DATE Affiche ou modifie la date.
DEL Supprime un ou plusieurs fichiers.
DIR Affiche la liste des fichiers et des sous répertoires d'un répertoire.
DISKCOMP Compare les contenus de deux disquettes.
DISKCOPY Copie le contenu d'une disquette sur une autre.
DOSKEY Modifie les lignes de commande, rappelle des commandes Windows, et
permet de créer des macros.
ECHO Affiche des messages à l'écran ou active/désactive l'affichage des
commandes.
ENDLOCAL Stoppe la localisation des modifications de l'environnement dans un
fichier de commandes.
ERASE Supprime un ou plusieurs fichiers.
EXIT Quitte l'interpréteur de commandes (CMD.EXE).
FC Compare deux fichiers ou groupes de fichiers, et affiche les
différences entre eux.
FIND Cherche une chaîne de caractères dans un ou plusieurs fichiers.
FINDSTR Cherche des chaînes de caractères dans un ou plusieurs fichiers.
FOR Exécute une commande sur chaque fichier d'un groupe de fichiers.
FORMAT Formate un disque pour utilisation avec Windows.
FTYPE Affiche ou modifie les types de fichiers utilisés dans les
associations d'extensions.
GOTO Poursuit l'exécution d'un fichier de commandes à une ligne identifiée
par une étiquette.
GRAFTABL Permet à Windows d'afficher un jeu de caractères en mode graphique.
HELP Affiche des informations sur les commandes de Windows.
IF Effectue un traitement conditionnel dans un fichier de commandes.
LABEL Crée, modifie ou supprime le nom de volume d'un disque.
MD Crée un répertoire.
MKDIR Crée un répertoire.
MODE Configure un périphérique du système.
MORE Affiche la sortie écran par écran.
MOVE Déplace un ou plusieurs fichiers d'un répertoire à un autre.
PATH Affiche ou définit le chemin de recherche des fichiers exécutables.
PAUSE Interrompt l'exécution d'un fichier de commandes et affiche un
message.
POPD Restaure la valeur précédente du répertoire courant enregistré par
PUSHD.
PRINT Imprime un fichier texte.
PROMPT Modifie l'invite de commande de Windows.
PUSHD Enregistre le répertoire courant puis le modifie.
RD Supprime un répertoire.
RECOVER Récupère l'information lisible d'un disque défectueux.
REM Insère un commentaire dans un fichier de commandes ou CONFIG.SYS.
REN Renomme un ou plusieurs fichiers.
RENAME Renomme un ou plusieurs fichiers.
REPLACE Remplace des fichiers.
RMDIR Supprime un répertoire.
SET Affiche, définit ou supprime des variables d'environnement Windows.
SETLOCAL Commence la localisation des changements de l'environnement dans un
fichier de commandes.
SHIFT Modifie la position des paramètres remplaçables dans un fichier de
commandes.
SORT Trie les éléments en entrée.
SUBST Affecte une lettre de lecteur à un chemin d'accès.
START Lance une fenêtre pour l'exécution du programme ou de la commande.
TIME Affiche ou définit l'heure de l'horloge interne du système.
TITLE Définit le titre de la fenêtre pour une session CMD.EXE.
TREE Représente graphiquement l'arborescence d'un lecteur ou d'un chemin.
TYPE Affiche le contenu d'un fichier texte.
VER Affiche le numéro de version de Windows.
VERIFY Indique à Windows s'il doit ou non vérifier que les fichiers sont
écrits correctement sur un disque donné.
VOL Affiche le nom et le numéro de série du volume.
XCOPY Copie des fichiers et des arborescences de répertoires.

 

Mais, peut-être penserez-vous :

- Cela ne m'avance pas plus, je ne sais pas comment les utiliser !

Mais je vais vous donner la réponse :

pour utiliser par exemple :

del

Vous devez taper del /?

Ce qui affiche la façon dont on doit les utiliser :

Supprime un ou plusieurs fichiers.

DEL [/P] [/F] [/S] [/Q] [/A[[:]attributs]] noms
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributs]] noms

noms Spécifie une liste d'un ou plusieurs fichiers ou répertoires.
Les caractères génériques peuvent être utilisés pour
supprimer plusieurs fichiers. Si un répertoire est spécifié,
tous les fichiers qu'il contient seront supprimés.

/P Demande une confirmation avant de supprimer un fichier.
/F Force la suppression de fichiers en lecture seule.
/S Supprime les fichiers dans tous les sous répertoires.
/Q Pas de confirmation avant suppression avec car. génériques.
/A Suppression en fonction des attributs
attributs R Fichiers en lecture seule S Fichiers système
H Fichiers cachés A Fichiers prêts pour archive
- Préfixe de négation

Si les extensions de commandes sont activées, DEL et ERASE sont modifiées
comme suit :
La logique d'affichage du commutateur /S est inversée. Elle
n'affiche que les fichiers supprimés, et pas ceux qui n'ont pas été trouvés.

________________________________

Voici certaines commandes dont je vais vous expliquer le sens :

1. title

2. color

3. del

4. format

5. goto

6. shutdown

 

______________________

1. title

Cette commande comme son nom l'indique change le titre par défaut : c'est-à-dire cmd.exe, par celui que vous définissez de cette façon :

title suivi du titre que vous avez choisi

Rien de plus simple !

 

2. color

Celle-ci change la couleur de la police et celle de l'arrière-plan; après color il faut indiquer une couleur en hexadécimal. Voici toutes les couleurs :


0 = Noir       8 = Gris
1 = Bleu foncé 9 = Bleu clair
2 = Vert       A = Vert clair
3 = Bleu gris  B = Cyan
4 = Marron     C = Rouge
5 = Pourpre    D = Rose
6 = Kaki       E = Jaune
7 = Gris clair F = Blanc

Le premier caractère correspond à l'arrière-plan et le second à la police.

Par exemple :

color c5

ou

color 8f

etc.

3. del

del supprime.

del *.extension supprime tous les fichiers d'une même extension

del "nom du fichier.extension" supprime un fichier  

Il vaut mieux faire ATTENTION lors de la manipulation de cette commande, puisque, une fois supprimé, vous ne pouvez PAS retrouver votre fichier !!!
 

4. format va avec del en quelque sorte.

format X:     où X correspond à la lettre du lecteur.

Celle-ci est tout aussi dangereuse que del alors, lorsque vous l'utilisez amusez-vous plutôt à formater votre clé USB ou bien une disquette !!!

5. goto

goto renvoie comme son nom l'indique à une étiquette dans le script. Les étiquettes sont marquées par :nom de l'étiquette ou :partie 1. Il faut introduire ":" au début du nom.

Dans le script suivant :

@echo off

:partie1

echo bonjour

echo et ça recommence

pause

goto :partie1

Après la pause on demande de revenir à la partie 1 donc de redire bonjour puis et ça recommence etc. en boucle.

6. shutdown

Cette commande : shutdown permet d'éteindre ou fermer son ordinateur

Elle permet soit :

- d'éteindre son PC directement ou après x secondes

- de redémarrer son PC directement ou après x secondes

- de fermer la session avec les mêmes options, etc

Je ne vous en dis pas plus. Vous verrez bien ce que vous pouvez faire en tapant si vous avez bien compris la commande help :

shutdown ?/

Voilà, j'ai enfin fini. J'espère ne pas vous avoir embrouillés.

INDEX PROGRAMMATION

Haut de Page

***********************************************************************************

toutes commandes valide en shell est valide dans un bash qui utilise le meme shell (ksh bash csh etc...)

par exemple un script en tcl/tk
1ere ligne etant #!/usr/bin/wish -f
acceptera toute ligne valide dans ce langage.

par exemple un script en tcl/tk
1ere ligne etant #!/usr/bin/pdksh
acceptera toutes lignes valides en pdksh mais pas de perl ou de tcl/tk...

c'est aussi simple que ça  
(simple encore qu'il faut qu'on te le dise puisque c'est jamais dit dans les bouquins).

*******************************************************************************************************


@echo off

echo Bonjour

pause

@echo off
cls

CHOICE /C:[Tes touches sans espaces ni majuscules] "[Ta question]" REM Exemples : CHOICE /C:aze "Une question ??"
If ERRORLEVEL==3 goto MARQUE3 REM If ERRORLEVEL==3 Signifi la troisieme touche en partan de la gauche Exemple : dans :CHOICE /C:aze La troisime touche est e
If ERRORLEVEL==2 goto MARQUE2 REM If ERRORLEVEL==2 Signifi la deuxieme touche en partan de la gauche Exemple : dans :CHOICE /C:aze La troisime touche est z
If ERRORLEVEL==1 goto MARQUE1 REM If ERRORLEVEL==1 Signifi la premiere touche en partan de la gauche Exemple : dans :CHOICE /C:aze La troisime touche est a

:MARQUE1 REM L'utilisateur a pressé la touche a
[La ou les commandes a executer si l'utilisatuer a taper la premiere touche]
goto Fin

:MARQUE2 REM L'utilisateur a pressé la touche z
[La ou les commandes a executer si l'utilisatuer a taper la deuxieme touche]
goto Fin

:MARQUE3 REM L'utilisateur a pressé la touche e
[La ou les commandes a executer si l'utilisatuer a taper la troisieme touche]
goto Fin

:Fin
REM Fin du test

 

REM@echo off <- permet d'enlever les commandes vous pouvez essayer avec

REM@echo on <-ce qui affichera les commandes

REMecho Bonjour <- permet d'afficher Bonjour sur la console

REMpause <- permet de mettre en pause l'exécution du .bat. Vous pouvez essayer sans

 

@echo off

echo Bonjour
echo ça va ?

echo ça va ?

echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?

echo Au revoir

pause

@echo off

echo Bonjour

pause

echo Bonjour
echo. <-Celle-ci saute une ligne

echo ca va ?

echo ca va ?

echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?
echo Comment va la vie ?

echo Au revoir

pause

echo message de ta mere sur internet ;;; raccroche stp > "Batch_a_text.ext"
echo message de ta mere sur internet ;;; raccroche stp "C:\WORK\SITE\ludowalsh\HTM\Batch_a_text.ext"
echo message> "C:\WORK\SITE\ludowalsh\HTM\Batch_a_text.ext"
echo message> "http://www.ludowalsh.com/HTM/Batch_a_text.ext"

pause

echo message
echo Appuyez sur une touche pour continuer... pour commande suivante
pause>nul
echo "exit"
help | more
color 8f
pause
help
color 9f
pause
color c5
help
pause
color 0f
help
pause
color 0f
help
pause
ipconfig/all
pause

set /P var=Question ?
echo var > C:\WORK\SITE\ludowalsh\HTM\reponse.txt

@echo off
echo
echo Si tu veux exploser ton ordinteur : appui sur 1
echo Si tu veux faire une fusé avec ton ordinateur : appuis sur 2
echo Si tu veux dire a Dark Silver qu'il déchire tout et que c'est un BigBoss : appuie sur 3
set /P chiffrre=
if %chiffre%==1 (
echo BOOOMMMM
goto end
)
if %chiffre%==2 (
echo Il te manque un moteur a réaction !
goto end
)
if %chiffre%==3 (
echo je te comprend C'est vrai qu'il déchire tout
echo Bon choix
)
:end

pause

@echo off

:partie1

echo bonjour
echo
echo et ça recommence

pause

goto :partie1