Programation batch

Fermé
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018 - Modifié le 8 juil. 2018 à 09:21
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018 - 8 juil. 2018 à 21:34
Bonjour, coordialement

merci pour votre aide j'ai un probleme qui me frappe :

j'ai une liste de fichiers nommes doc1.txt, doc2.txt, doc3.txt .... doc10.txt
j'aimerais par la boucle for parcourrir chacun de ces fichier et supprimer la ligne contenant la lettre a .

mais je sais pas comment m'y prendre si quelau'un a quelque chose a me proposer je serais tres ravi, merci

voici ce que j'ai fait:
for /l %%z in (0,1,%nbfic%) do (
 if exist "doc%%z.txt" (
  findstr /v "@" doc%%z.txt > docc!z!.txt
)
)

1 réponse

barnabe0057 Messages postés 14454 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 30 novembre 2024 4 923
8 juil. 2018 à 10:30
Bonjour,

Voilà la solution :

for /l %%z in (1,1,%nbfic%) do (
if exist "doc%%z.txt" (
(for /f "tokens=1,* delims=:" %%A in ('findstr /n /v "@" doc%%z.txt') do (echo(%%B)) >docc%%z.txt
)
)

0
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018
8 juil. 2018 à 14:31
merci beaucoup barnabe0057 je vais tester votre solution et vous rendrais compte du resultat final
0
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018
8 juil. 2018 à 21:09
ca marche merci beaucoup
0
barnabe0057 Messages postés 14454 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 30 novembre 2024 4 923 > piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018
8 juil. 2018 à 21:14
Ok super.
0
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018
Modifié le 8 juil. 2018 à 21:29
mais j'ai un autre petit soucis dans mon programme je vous envoi les fichiers sources et s'il ya une anomalie veuillez s'il vous plait me corriger

d'abord voici le manuel d'utilisation de mon programme il explique ce que fait ce dernier:

Manuel d'utilisation:

ce programme vous permet de diviser un fichier donc les lignes sont separees par un signe que nous appelerons le "delimiteur de lignes" ici c'est le "@", en plusieurs fichiers contenant chacun toutes les lignes avant ou apres le delimieur;

pour ce faire:
- ouvrer le fichier en mode "ecriture";

- aller a la ligne 14 puis changer le delimiteur "@" si vous utiliser un autre;

- aller ensuite a la ligne 22 et 30 modifier le nom de votre fichier que vous voulez diviser dans les parenthes , ici (pivo.txt);

- enregistrer puis ferrmer;

- executer enfin le programme

NB: les fichiers de sortie sont nommes "fichier1" jusqu'a "fichier-n", avec n le nombre total de fichiers crees determines par le nombre de delimiteur +1 car le dernier fichier est vide preuve que la division a bien ete effectuee et qu'on a atteind la fin du fichier principale.
vous pouvez toute fois changer le nom des fichiers de sortie pour cela aller a la ligne 52 et moodifier fichier dans fichier%%z.txt

faites-en bonne usage


version du script 0.1
programmeur piv0t@iut
0
piv0t Messages postés 12 Date d'inscription vendredi 6 juillet 2018 Statut Membre Dernière intervention 17 juillet 2018
Modifié le 8 juil. 2018 à 21:28
voici le fichier de test:

qqqqqqqqqqqqqqqqqqqqqqqqq
rrrrrrrrrrrrrrrrrrrrrrrrr
vvvvvvvvvvvvvvvvvvvvvvv
@
bbbbbbbbbbbbbbbbbbbbbbbb
@
dddddddddddddddddddddd
@
ssssssssssssssssssssssssss
@
aaaaaaaaaaaaaaaaaaaaaaaaa qqqqqqqq
aaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaa
@
ffffffffffffffffffffffff
@
finfinfinfinfifnfifnfinfnifnffifnififnfnfin
@
0

Discussions similaires