Je souhaite récupérer le contenu d'un fichier, le filtrer et le modifier, puis réécrire le résultat dans un fichier. Je fais ceci:Powershell: Sortie de l'objet [] vers un fichier
PS C:\code> "test1" >> test.txt
PS C:\code> "test2" >> test.txt
PS C:\code> $testContents = Get-Content test.txt
PS C:\code> $newTestContents = $testContents | Select-Object {"abc -" + $_}
PS C:\code> $newTestContents >> output.txt
sortie.txt contient
"abc -" + $_
------------
abc -test1
abc -test2
Ce qui donne à cette première ligne? C'est presque comme si foreach rendait IEnumerable - mais $ newTestContents.GetType() révèle qu'il s'agit d'un tableau d'objets. Alors qu'est-ce qui donne? Comment puis-je obtenir le tableau pour sortir normalement sans l'en-tête étrange.
points bonus Aussi, si vous pouvez me dire pourquoi newTestContents $ [0] .ToString() est une chaîne vide
comment pourrais-je utiliser exactement foreach pour créer une transformation? –
George, .. utilise ton même code .. mais remplace Select-Object par ForEach. Cela devrait fonctionner comme sans aucune autre modification. – Nestor
Ah, merci. Je pensais du point de vue C# LINQ où ForEach est un retour vide –