Quiero validar si la línea encima de cierta línea está ahí, entonces está bien. En caso contrario, ¿eliminar esa línea y eliminar el espacio vacío? ¿Se puede hacer esto en powershell? por favor ayuda
Si antes de todas las líneas que comienzan con "^37", si la línea comienza con 33, entonces está bien. De lo contrario, elimine esa línea y elimine también el espacio vacío. Ahora, hay más de cien mil casos como este en mi expediente. Por favor ayuda... es muy urgente.
Archivo TestData.txt: -
03,201779,,01354,73923309,,,TEST2,7962753,,,0343,5087632,,/#end of line
04,399,777873,,,,text234,,,,/
33,TEST1,,,0343,,93493,,,343,,,,TEST3,,,,,,/
37,TEST37,text
49,24605597,6,343,343,343,,,3434,,,/
Respuesta1
Pruebe los siguientes cmdlets:
#Get the file's content and join each line with newline character
#because by default splits lines by newline. So, the need to rejoin the lines
$text = [string]::Join("`n", (Get-Content a.txt))
#Find and replace the pattern, then output the result to file
#The file's content is replaced
[regex]::Replace($text, "^3[^3].+`n^(37.+)", '$1', "Multiline") | Out-file a.txt
Reemplace a.txt
con su nombre de archivo.