PowerShell: Cómo reemplazar el primer carácter en una cadena
Puede usar la siguiente sintaxis en PowerShell para reemplazar el primer carácter de cada cadena en un archivo:
Get-Content old.txt | ForEach { $_ -replace "^#", "_" } | Set-Content new.txt
Este ejemplo particular reemplazará el carácter # al principio de cada cadena en el archivo llamado old.txt y guardará los resultados en un nuevo archivo llamado new.txt. .
Esto es lo que hacen los distintos comandos:
- Get-Content: devuelve todas las líneas del archivo de texto.
- ForEach: especifica una acción a realizar en cada línea del archivo.
- $_: Devuelve el texto existente de la línea actual
- -replace “^#”, “_”: reemplaza el carácter inicial ( ^ ) de # con _
- Set-Content: guarda el contenido actualizado en un archivo de texto específico
El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.
Ejemplo: cómo reemplazar el primer carácter de una cadena usando PowerShell
Supongamos que tenemos un archivo llamado team_list.txt en nuestro directorio actual que contiene los nombres de varios equipos de baloncesto.
Podemos usar el cmdlet Get-Content para ver el contenido de este archivo:
Supongamos que nos gustaría reemplazar el carácter # al comienzo de cada línea con un guión bajo.
Podemos utilizar la siguiente sintaxis para hacerlo:
Get-Content team_list.txt | ForEach { $_ -replace "^#", "_" } | Set-Content team_list2.txtLa siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Observe que cuando usamos el cmdlet Get-Content para ver el contenido del nuevo archivo team_list2.txt podemos ver que el primer carácter de cada línea ha sido reemplazado por un subrayar.
Nota: Puede encontrar la documentación completa para la declaración Foreach en PowerShell aquí.

