Inserer une ligne dans un fichier en batch.

Fermé
vicondore Messages postés 1 Date d'inscription lundi 13 avril 2015 Statut Membre Dernière intervention 13 avril 2015 - Modifié par Whismeril le 13/04/2015 à 17:41
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 15 avril 2015 à 09:50
Bonjour,

Je suis un débutant en programmation et je n'arrive pas à terminer ma programmation.

Je souhaite insérer une ligne numéro N depuis un fichier A.txt dans un fichier B.txt à la même position N.


J'ai réussi à récupérer les informations et numéro de ligne depuis le fichier A.txt mais je ne sais pas comment l'inserer dans le fichier B.txt.


Si quelqu'un a une idée je suis preneur. Voici le code :


setlocal enabledelayedexpansion
set compteur=1
for /f %%i in ('type A.txt') do (
echo %%i|find "GPS" > nul && echo %%i>>result.txt
set /A compteur+=1
)
echo compteur : !compteur!




Ce petit programme recherche les lignes comportant le mot 'GPS' dans A.txt et copie la ligne trouvée dans result.txt. compteur est le numéro de ligne.
A voir également:

1 réponse

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
15 avril 2015 à 09:50
hello
si j'ai tout compris, on prend la ligne qui contient GPS dans le fichier a.txt, la ligne 3 et on remplace la ligne 3 du fichier b.txt
C:> type a.txt
aa
bb
GPS-A
cc
dd
C:> type b.txt
111
222
333
444
555
C:> cc
111
222
GPS-A
444
555
C:> type cc.bat
@echo off
setlocal enabledelayedexpansion
set compteur=1
for /f %%i in ('type A.txt') do (
echo %%i|find "GPS" > nul && (set l=%%i&set c=!compteur!)
set /A compteur+=1
)
set compteur=1
for /f %%i in ('type b.txt') do (
if !compteur! EQU %c% ( echo %l%) else ( echo %%i)
set /A compteur+=1
)
0