Búsqueda de sitios web

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.txt

La 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í.

Artículos relacionados