Bonjour,
Je dois traiter un fichier xml via un script powershell.
Je rencontre un petit soucis pour le parcourir car je ne peut pas utiliser la cmdlet select-xml
exemple si je recherche dans mon fichier la valeur du xpath: root.name.poste
voilà mon code:
Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $XmlFilePath = "fichier.xml" [xml]$xml = Get-Content $XmlFilePath $value = $xml.root.name.poste
avec ce code çà fonctionne et ça me renvoie bien la valeur contenu dans l'attribut root.name.poste
Ce que je souhaite faire c'est de stocker l'ensemble des mes Xpath dans un fichier csv (car il y en a beaucoup) afin de les appeler et les stocker dans un variable pour récupérer leur valeur.
Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 $XmlFilePath = 'fichier.xml' $propertiesCSV = 'fichier.csv' [xml]$xml = Get-Content $XmlFilePath $contenucsv = Import-Csv $propertiesCSV -Delimiter ";" | select-object Description,XpathValue foreach ( $Data in $contenucsv ) { $description = $Data.Description $Value = $Data.XpathValeur #interpretation de la valeur avec le xpath $xpathValue = $xml.$value $xpathValue }
Le problème est qu'il ne m’interprète pas mon $xml
Il me renvoie $xml.root.name.poste et nom la valeur.
Je voudrais savoir s'il est possible de récupérer la valeur d'un xpath en utilisant $xml+'Xpath'
Merci pour votre aide
Partager