Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1060 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [RESOLU][powershell 2.0] Lecture de fichier properties problématique..

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU][powershell 2.0] Lecture de fichier properties problématique..

n°2225206
CerfPyvert
Le Sabotageur
Posté le 16-04-2014 à 10:54:47  profilanswer
 

J'ai un léger problème de lecture de fichier de properties.
Mon fichier contient les valeurs suivantes :
 

Code :
  1. truc = machin
  2. bidule = pouet


 
(D'après mes tests, je n'ai pas l'impression que les espaces autour du "=" changent grand chose)
 
Je le lis en PowerShell V2.0 de la manière suivante :
 

Code :
  1. $ConfigProps = (Get-Content ./properties/config.properties) | convertfrom-stringdata


 
La variable $ConfigProps m'affiche bien les lignes suivantes :
 

Citation :

Name                           Value                                                                                                                    
----                           -----                                                                                                                    
truc                           machin                                                                                                                  
bidule                         pouet  


 
Mon problème est la récupération liée par exemple à "truc". J'ai essayé les syntaxes suivantes (dont certaines doivent marcher, d'après ce que je lis sur le net) :
 

Code :
  1. $ConfigProps.'truc'
  2. $ConfigProps."truc"
  3. $ConfigProps["truc"]
  4. $ConfigProps[truc]
  5. $ConfigProps.truc


 
Et, chose étrange, j'arrive à récupérer une ligne avec
 

Code :
  1. $ConfigProps[5]


 
Avec "5" qui est le numéro de lignes (-1) dans mon fichier properties d'origine et pas le nombre de valeurs dans ConfigProps ! Donc si j'ai des lignes de commentaires dans mon fichier, cela perturbe un peu tout.
Ce n'est clairement pas la solution, puisque je souhaite récupérer la valeur à partir du nom et pas à partir du numéro de ligne, mais de plus, en essayant $ConfigProps[5].Name ou .Value ne fonctionne toujours pas.
 
En résumé : comment faire pour afficher la valeur à partir du nom ? La méthode prise en premier lieu est-elle la bonne, ou faut-il que je passe par quelque chose de plus verbeux (mais qui fonctionnerait) ?


Message édité par CerfPyvert le 16-04-2014 à 11:41:00
mood
Publicité
Posté le 16-04-2014 à 10:54:47  profilanswer
 

n°2225211
CerfPyvert
Le Sabotageur
Posté le 16-04-2014 à 11:40:05  profilanswer
 

Bon bah voilà, à 5 mins près je l'avais. C'était ma méthode de base qui ne fonctionnait pas, pour une raison que j'ignore.
 
La méthode suivante marche mieux :

Code :
  1. # propsPath est le chemin du fichier properties, on passe d'abord le fichier en String PUIS on fait appelle à convertfrom-stringdata
  2. $propsContent = Get-Content -Path $propsPath | Out-String
  3. $ConfigProps = convertfrom-stringdata -StringData $propsContent
  4. $ConfigProps.'truc'


 
Ca m'affiche bien "machin". Il devait y avoir un problème avec le pipe dans le code précédent.
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [RESOLU][powershell 2.0] Lecture de fichier properties problématique..

 

Sujets relatifs
supprimer cote dans un fichierFonction include pour un fichier html
Couper des champs particuliers du fichier texteparser un fichier json avec jquery
importation de valeur de cellule dans un texte sous excelScript shell pour comparaison de 2 fichier et récupération du résultat
comment extraire des données spécifique du fichier logtélécharger un fichier CSV d'une manière automatique
FileExists retourne true alors que le fichier n'existe plus ![Problème Maro Vba ] Exporter une colonne en fichier Texte.
Plus de sujets relatifs à : [RESOLU][powershell 2.0] Lecture de fichier properties problématique..


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR