[Résolu] aide pour manipulation fichier texte en powershell

aide pour manipulation fichier texte en powershell [Résolu] - Shell/Batch - Programmation

Marsh Posté le 12-10-2020 à 13:35:15    

Bonjour,
 
Je ne suis pas spécialiste de powershell (loin de là !), mais j'ai besoin de faire ponctuellement un petit script pour lequel j'aurais besoin d'aide
 
Je dois modifier une ligne dans un fichier texte
 
Il faut que j'y retrouve la ligne qui commence, par exemple, par ABCD, que je l'extraie dans une variable pour pouvoir y faire les modifs que je veux,
 
Et qu'une fois cette ligne modifiée, je réécrive le fichier de départ, mais en y substituant cette ligne modifiée
 
Je ne sais pas à l'avance le nombre de lignes composant le fichier (environ 50)
Ni le n° de ligne concernée
 
Pour l'instant, je fais ceci,  
 
$fichier = Get-Content "c:\tmp\essai.txt"
$resultat=""
foreach($ligne in $fichier)
{
   if ($ligne.SubString(0,4) -eq "ABCD" ) { $lignew="turlututu" } else { $lignew = $ligne }
   if ($resultat -eq "" ) { $resultat = $lignew } else { $resultat = $resultat + "`r`n" + $lignew }
}
Add-Content  -path "C:\tmp\youpi.txt" -value $resultat

 
mais c'est sûrement pas la meilleure solution ni la plus optimisée ... :pfff:  
 
Aussi, merci aux âmes charitables qui pourraient m'aider ... :hello:


Message édité par rogntudjuuu le 15-12-2020 à 15:08:31
Reply

Marsh Posté le 12-10-2020 à 13:35:15   

Reply

Marsh Posté le 15-10-2020 à 11:57:03    

Code :
  1. gc C:\temp\test.txt |% { $_ -replace "^ABCD","turlututu" } | Out-File c:\temp\youpi.txt


 
Après le seul inconvénient c'est que ça rajoute une ligne vide à la fin mais ton code aussi je présume

Reply

Marsh Posté le 15-12-2020 à 15:08:03    

Ca ne fait pas exactement ce que je souhaire
Mais je garde précieusement la commande
Ca me servira sûrement plus tard
Merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed