Question Contenu CSV différent du contenu affiché

Plus d'informations
il y a 2 ans 11 mois #30708 par Giraudeau
Bonjour à tous,

Après avoir galéré un nombre d'heure incalculable, je me tourne vers vous car je ne comprend vraiment pas le fonctionnement des variables en powershell.

Je tente de récupérer les informations des interfaces réseaux sur des serveurs distants et les envoyer dans un csv. Mon problème est que lorsque j'affiche le contenu de ma variable contenant les informations, tout est ok. Mais lorsque j'exporte le contenu de cette variable dans un csv, elle me met n'importe quoi... C'est à n'y rien comprendre franchement.

Mon bout de code :
$ipconf=Get-NetIPConfiguration -CimSession $server
$ipconf | select-Object {$_.InterfaceAlias,$_.InterfaceIndex,$_.InterfaceDescription,$_.IPv4Address,$_.IPv4DefaultGateway,$_.DNSServer} | Export-Csv -Path "C:\Users\[i][MONUSER][/i]\Desktop\CarteReseau\$server.csv" -Delimiter ';'

Voila en gros quand j'affiche $ipconf, toutes les info sont la.
Quand j'exporte dans le csv, j'ai plein de "Microsoft.Management.Infrastructure.CimInstance[]" partout.

Merci infiniment pour votre aide.
Cédric


 

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30710 par Laurent Dardenne
Salut,
tu manipules des objets contenant une ou des propriétés de type tableau ( les [] de CimInstance[]).
Le format Csv ne gère pas l'imbrication de données sous forme de tableau.
C'est à toi de construire des propriétés calculées, à l'aide de Select-Object, afin de construire une chaine de caractères à partir du contenu d'un tableau :
$o=[PSCustomObject]@{Nom='MonObject';Datas=@(1,2,3)}
$o|export-csv c:\temp\test.csv -NoTypeInformation -Delimiter ';'
type c:\temp\test.csv
# "Nom";"Datas"
# "T";"System.Object[]"

$o|Select-Object Nom,@{Name='Datas';Expression={$Ofs=','; "$($_.Datas)"}}|export-csv c:\temp\test.csv -NoTypeInformation -Delimiter ';'
type c:\temp\test.csv
# "Nom";"Datas"
# "MonObject";"1,2,3"

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.068 secondes
Propulsé par Kunena