PowerShell: cómo actualizar contenido en un archivo XML
A menudo, es posible que desee utilizar PowerShell para actualizar contenido específico en un archivo XML.
Puede utilizar la siguiente sintaxis para hacerlo:
[xml]$my_xml = Get-Content my_data.xml
foreach ($element in $my_xml.team.info) {
$element.loc = "National Basketball Association"
}
$my_xml.Save("my_data.xml")
Esto es lo que hace este ejemplo en particular:
- Primero, utilice un cmdlet Get-Content para recuperar el contenido del archivo XML denominado my_data.xml.
- Luego, utilice un cmdlet foreach y establezca el contenido de cada nodo con la estructura team.info.loc como "Asociación Nacional de Baloncesto".
- Por último, utilice el comando Guardar para guardar estos cambios en el archivo XML original.
El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.
Ejemplo: utilizar PowerShell para actualizar contenido en un archivo XML
Supongamos que tenemos un archivo XML llamado my_data.xml en nuestro directorio actual.
Podemos usar el cmdlet Get-Content para ver el contenido de este archivo:
Supongamos que nos gustaría cambiar el texto "NBA" por "Asociación Nacional de Baloncesto" para cada nodo que termine en las etiquetas
Podemos utilizar la siguiente sintaxis para hacerlo:
[xml]$my_xml = Get-Content my_data.xml
foreach ($element in $my_xml.team.info) {
$element.loc = "National Basketball Association"
}
$my_xml.Save("my_data.xml")La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Tenga en cuenta que cada aparición del texto "NBA" ha sido reemplazada por "Asociación Nacional de Baloncesto".
No dude en utilizar una sintaxis similar para actualizar cualquier contenido específico que desee en su propio archivo XML.
Nota: Puede encontrar la documentación completa para la declaración foreach en PowerShell aquí.

