A voir également:
- Remplacer UN caractère dans un .txt en batch.
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Remplacer disque dur par ssd - Guide
- Remplacer dans word - Guide
5 réponses
dubcek
Messages postés
18764
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
9 février 2025
5 623
26 juin 2010 à 08:52
26 juin 2010 à 08:52
ce .bat prend 2 paramètres, la position du caractère à changer et la valeur de remplacement
C:> type lpt.txt 00000000 C:> aa 3 1 C:> type lpt.txt 00100000 C:> aa 5 2 C:> type lpt.txt 00102000 C:> aa 3 0 C:> type lpt.txt 00002000 C:> type aa.bat @echo off set pos=%1 set /a p1=pos-1 set c=%2 setlocal enableDelayedExpansion for /f "tokens=1" %%a in (lpt.txt) do ( set x=%%a set y=!x:~0,%p1%!%c%!x:~%pos%,10! echo !y! > lpt.txt ) C:>
dubcek
Messages postés
18764
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
9 février 2025
5 623
25 juin 2010 à 15:14
25 juin 2010 à 15:14
hello
on affiche 2 caractères puis le X puis le reste à partir du 4ème caractère, donc on a remlacé le 3 par X
on affiche 2 caractères puis le X puis le reste à partir du 4ème caractère, donc on a remlacé le 3 par X
C:> set x=1234567890 C:> echo %x:~0,2%X%x:~3,10% 12X4567890 C:>
Merci beaucoup dubcek pour cet réponse rapide et précise !! je vais essayer tout ça je te tien au courant . encore merci .
dubcek
Messages postés
18764
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
9 février 2025
5 623
25 juin 2010 à 16:13
25 juin 2010 à 16:13
montre un exemple plus précis de ce que tu veux faire
C:> set x=00000000 C:> set y=%x:~0,2%1%x:~3,10% C:> echo %x% & echo %y% 00000000 00100000 C:>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Donc je m'explique, mon fichier "lpt.txt" ce trouve a la racine de mon HDD, il contient:
00000000
Et je voudrai creer des fichiers bat capable de changer chacun des caractères séparement comme je l'est énoncer avant.
Mon problemme ce pose surtout sur la syntaxe du fichier bat. si tu pouvais me montrer clairement ce qu'y ce trouve dans le .bat. (non pas que ton éxplication n'est pas clair mais comme je l'es dit je suis novice en bat).
Voila voila merci.
j'espere avoir etait un peu plus clair.
00000000
Et je voudrai creer des fichiers bat capable de changer chacun des caractères séparement comme je l'est énoncer avant.
Mon problemme ce pose surtout sur la syntaxe du fichier bat. si tu pouvais me montrer clairement ce qu'y ce trouve dans le .bat. (non pas que ton éxplication n'est pas clair mais comme je l'es dit je suis novice en bat).
Voila voila merci.
j'espere avoir etait un peu plus clair.
chuka
Messages postés
965
Date d'inscription
samedi 11 octobre 2008
Statut
Membre
Dernière intervention
29 juillet 2010
378
25 juin 2010 à 21:40
25 juin 2010 à 21:40
salut,
tu peux utiliser sed.exe (http://gnuwin32.sourceforge.net/packages/sed.htm et dans ton batch cela te donne:
sed monfichier.txt -e"s/00000/00001/g" > monfichier1.txt
del monfichier.txt
rename monfichier1.txt monfichier.txt
@+
tu peux utiliser sed.exe (http://gnuwin32.sourceforge.net/packages/sed.htm et dans ton batch cela te donne:
sed monfichier.txt -e"s/00000/00001/g" > monfichier1.txt
del monfichier.txt
rename monfichier1.txt monfichier.txt
@+
26 juin 2010 à 16:49
bonne journée a tous.