Soy un novato en powershell. Tengo un script de PowerShell simple que simplemente reemplaza el texto pero encontré que la expresión regular reemplazar mi fuente de datos de línea múltiple en un solo texto de línea cuando se produce la salida. Quiero que se salven los saltos de línea. Aquí está la versión simplificada del guión.Powershell replace lose line breaks
$source=(Get-Content textfile.txt)
$process1 = [regex]::Replace($source, "line", "line2")
$process1 | out-file -encoding ascii textfile2.txt
Se puede crear un archivo de prueba textfile.txt llamada con líneas simples como esto para probar que
line
line
Some line
More line here
¿Me he perdido algo obvio?
Gracias, Fadrian
Esto funciona gracias. Todavía se preguntan por qué la expresión regular se comporta de la manera en que es, diferente de la ejecución de la expresión regular en el entorno .NET. –
@Fadrian: agregué un párrafo al comienzo de la respuesta explicando su problema original. Espero eso ayude. – Joey
Gracias Johannes +1 por respuesta y +1 por la publicación –