[batch] exercices
Forum Programmation : [batch] exercices
Bonjour, je cherche un ou plusieurs sites pour avoir des exemples de scripts batch et des exercices a faire pour m'améliorer un batch.
j'ai rechercher mais je n'ai rien trouvé.
merci d'avance!
http://www.infos-du-net.com/forum/ [...] amme-batch
Regarde les 2 liens que j'avais donné.
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
ok merci je vais regarder sa avec le lien http://fr.wikibooks.org/wiki/DOS
je peut apprendre tout sur le batch ou pas?
J'ai un peu participé à son écriture, mais c'est pas fini.
Regarde la page principale, et les commandes principales (for, set, if, goto).
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Donc Goto , set je connaît
if je connaît pa beaucoup
for je connaît pas du tout
mais je vais regarder tout sa lol.
Le for est la commande la plus utile pour le traitement de fichier
Message édité par CRicky le 10-07-2007 à 22:31:53
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
C'est sur qu'une pettite boucle de temps en temps, sa fait pas de mal !
lol
ok si je comprend pas quelque chose je poste ma question sur ce topic lol
Voilà donc c'est très bien fait!
mais je ne comprends plus à partir de FOR au titre Boucle sur le contenu d'un fichier
Je vais regarder if qui je pense est autant bien fait que for!
edit: j'ai regardé set, if, goto et j'ai tout compris c'est très bien fait!
bravo!
voilà donc j'aimerais que l'on maide sur le topic pour la boucle for svp.
Donc maintenant j'ai un niveau moyen en batch car ton lien m'a beaucoup aidé,merci et puis je savais quand même faire des choses en batch lol
est-ce que je devrai apprendre autre chose a partir du lien que tu m'as donné?
merci.
Message édité par liblabrute le 11-07-2007 à 11:59:39
En fait avec FOR, le commutateur qui est à côté (par exemple /F) est aussi important que le for lui-même, car la commande est totalement différente selon le commutateur.
J'ai écrit une bonne partie du for. Je me suis inspiré sur l'explication que j'avais faite avant sur le lien suivant :
http://www.infos-du-net.com/forum/ [...] -aidez-for
Alors bon, si tu ne comprends pas, je vois pas comment expliquer mieux.
En gros, le for permet, selon le commutateur de:
- répéter un certain nombre de fois une opération
- faire des opérations sur une liste de fichier (pour chaque fichier indiqué)
- faire des opérations sur les lignes contenues dans un fichier (pour chaque ligne de fichier). Dans ce cas, on peut découper la ligne en cours de traitement en plusieurs morceaux (dans plusieurs variables).
Message édité par CRicky le 11-07-2007 à 19:31:35
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Ok non c'est très bien expliqué mais c'est moi qui n'est pas doué lol mais je vais essayer de mieu regarder et plus longtemps lol voilà.
Merci!! en regardant http://www.infos-du-net.com/forum/ [...] -aidez-for je viens de comprendre pleins de chose sur for merci!!!c'est sympas puis mintenant je vais revoir http://fr.wikibooks.org/wiki/DOS pour la boucle for pour comprendre encore mieu merci!!!
Message édité par liblabrute le 12-07-2007 à 11:40:32
En faite je fais par exemple:
Code :
|
dans mon fichier texte je marque
Code :
|
ben dans la fenetre dos sa marque
Code :
|
alors que dans la boucle c'est marqué "eol=;"
Tu télécharges MSNFix et tu regardes comment il est constitué.
Répondre à Tybbow
lol je vais regarder.
Code :
|
Ta commande n'est pas correcte, et je m'explique:
Tu boucles sur les lignes de test2.txt.
Tu n'a qu'une ligne, donc ce qui est fait dans le FOR, n'est fait qu'une seule fois.
Le découpage de la ligne se fait dans les variables, c'est à dire que %%I contient :
Code :
|
Jusque là, tout va bien, mais regarde ta commande, tu fais:
Code :
|
pour la ligne.
Or cette commande affiche le contenu du fichier. Si tu avais mis 5 lignes dans test2.txt, tu aurais affiché son contenu 5 fois !
En fait, il ne te faut utiliser que les variables qui contiennent déjà le contenu découpé.
Il te faut donc, simplement utiliser %%i qui contient "letrucmachin " sous forme d'une simple chaine.
Pour afficher la chaine, il faut utiliser la commande ECHO.
Code :
|
affiche "toto"
Il te suffit de remplacer le "toto" par "%%i", et c'est bon.
Donc, ton code corrigé donne:
Code :
|
Message édité par CRicky le 12-07-2007 à 19:30:02
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Donc merci pour ta reponse grace a toi j'ai compris eol et skip le problème c'est que token je ne comprends et si je fais
for /F "delims=;" %%i in (test2.txt) do echo %%i
c'est pareil que si je fais
for /F "eol=;" %%i in (test2.txt) do echo %%ije comprends pas pouquoi?
Dans ce cas c'est pareil car tu n'as pas fait de token.
si tu ajoutais "token=1,2", (découpage en 2 morceaux), alors le premier morceau se met dans %%i et le second dans %%j (le suivant dans l'ordre alphabetique). Ceci uniquement si tu mets avec delims.
Avec eol, tous ce qui suit le caractère indiqué est jeté.
La programmation du for est un peu bizarre mais c'est comme ça
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Oui c'est vrai que c'est bizzare lol mais merci pour tes réponses.
Il y a 290 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
