J'ai un problème avec mon script, lorsque je le run il n'affiche pas toutes les cellules qui match lorsque je met un pipeline alors que sans celui-ci l'affichage est différent. Le but du script est comparer 4 colonnes et d'afficher seulement les cellules qui ne sont pas dans la colonne de référence donc je dois faire cette opération 4 fois mais en plus de cela je n'arrive à afficher les noms de colonnes lorsque je souhaite run la suite du script et des écarts ce font et je parviens pas à les retirer.
voici le code pour afficher les 4 colonnes sans pipeline mais avec des trous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $csv = Import-Csv .\test1.csv -Delimiter ';' $ref = @($csv.Column1) foreach ($row in $csv) { foreach ($col in 'Column2', 'Column3', 'Column4') { if ($ref -contains $row.$col) { $row.$col = '' } } } $csv | Select-Object Column1,Column2,Column3,Column4
le fichier
Column1 Column2 Column3 Column4
infra-1 infra-852 infra-2 infra-99
infra-98 infra-85 infra-44 infra-23
infra-5 infra-8 infra-1 infra-10
infra-2 infra-55 infra-8 infra-70
infra-62 infra-5 infra-852 infra-5
le résultat sans pipeline
Column1 Column2 Column3 Column4
------- ------- ------- -------
infra-1 infra-852 infra-99
infra-98 infra-85 infra-44 infra-23
infra-5 infra-8 infra-10
infra-2 infra-55 infra-8 infra-70
infra-62 infra-852
resultat:
En ajoutant : | where Column3 -ne '' par exemple
Column1 Column2 Column3 Column4
------- ------- ------- -------
infra-98 infra-85 infra-44 infra-23
infra-2 infra-55 infra-8 infra-70
infra-62 infra-852
Désolé mais je n'arrive pas afficher les tableaux correctement et je ne peux pas mettre de captures
Partager