Bonjour à tous,

Avant de commencer, je vous souhaite à tous une bonne et heureuse année 2022.

J'ai un programme qui tourne sur plusieurs machines et m'envoie des logs par mail sous forme d'un fichier txt.
Tous ces logs sont extraits et enregistrés dans un dossier sur lequel je souhaite exécuter un script pour vérifier deux variables.

Ci dessous l'extrait du log avec les deux variables en question:

"vulnerable_file_count": 1,
"potentially_vulnerable_file_count": 0,
J'essaie via un script powershell d'extraire ces deux variables et rencontre quelques difficultés.
Lorsque je fais un echo de ma variable, j'ai plusieurs retour chariot dont je n'arrive pas à me débarrasser, ce qui m’empêche d'exécuter la suite de mon script.

Ci dessous le code concerné

Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
$invocation = (Get-Variable MyInvocation).Value
$directorypath = Split-Path $invocation.MyCommand.Path
$settingspath = $directorypath + '\*.txt'
 
# retrieve variables from a file
$rapport = get-content $settingspath
$var1 = $rapport | select-string '"vulnerable_file_count"' | %{$_.line.split(': ')}
$vulnerable_file_count = $var1 -replace '"vulnerable_file_count"','' -replace ':','' -replace ',',''
$var2 = $rapport | select-string '"potentially_vulnerable_file_count"' | %{$_.line.split(': ')}
$potentially_vulnerable_file_count = $var2 -replace '"potentially_vulnerable_file_count"','' -replace ':','' -replace ',',''

Mon deuxième soucis est de récupérer le nom des fichiers de log pour lesquels mes variables auraient les valeurs souhaitées et là je ne sais comment faire.

Je vous remercie par avance pour l'aide que vous pourrez m'apporter.
Fabrice.