Question
Cmdlets dans Select-Object
- Cerede
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 15
- Remerciements reçus 0
il y a 10 ans 8 mois #15297
par Cerede
Cmdlets dans Select-Object a été créé par Cerede
Bonjour,
Je souhaite obtenir des informations de mon serveur Exchange.
Pour cela je récupère la liste des mailbox mais je voudrais aussi des infos qui sont dispo avec la cmdlet Get-MailboxStatistics et ensuite ne prendre que les champs qui m'intéressent via un Select-Object.
J'ai essayé ça :
[code:1]Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"} |ForEach-Object {$_.SmtpAddress}}} | Export-CSV .\smtp.csv -NoTypeInformation[/code:1]
Sans succès
Ma colonne LastLogedOn reste vide
Merci pour vos lumières
Je souhaite obtenir des informations de mon serveur Exchange.
Pour cela je récupère la liste des mailbox mais je voudrais aussi des infos qui sont dispo avec la cmdlet Get-MailboxStatistics et ensuite ne prendre que les champs qui m'intéressent via un Select-Object.
J'ai essayé ça :
[code:1]Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"} |ForEach-Object {$_.SmtpAddress}}} | Export-CSV .\smtp.csv -NoTypeInformation[/code:1]
Sans succès
Ma colonne LastLogedOn reste vide
Merci pour vos lumières
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 10 ans 8 mois #15300
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Cmdlets dans Select-Object
Bonsoir,
Je ne connais pas Exchange... Mais quel est le résultat de ce code ?
[code:1]
# Récupération d'une collection de mailbox
$MBoxes = Get-Mailbox -ResultSize Unlimited
# Pour chaque mailbox de la collection
foreach($MBox in $MBoxes){
try{
$ms = Get-MailboxStatistics -Identity ($MBox.Identity) -ErrorAction Stop
}
catch{
# Une erreur s'est produite : on affiche l'erreur et on continue sur l'élément suivant
Write-Error \"Erreur : $($_.Exception.Message)\"
Continue
}
$ms.LastLogonTime
}
[/code:1]
@ +
Matthew BETTON
Je ne connais pas Exchange... Mais quel est le résultat de ce code ?
[code:1]
# Récupération d'une collection de mailbox
$MBoxes = Get-Mailbox -ResultSize Unlimited
# Pour chaque mailbox de la collection
foreach($MBox in $MBoxes){
try{
$ms = Get-MailboxStatistics -Identity ($MBox.Identity) -ErrorAction Stop
}
catch{
# Une erreur s'est produite : on affiche l'erreur et on continue sur l'élément suivant
Write-Error \"Erreur : $($_.Exception.Message)\"
Continue
}
$ms.LastLogonTime
}
[/code:1]
@ +
Matthew BETTON
Connexion ou Créer un compte pour participer à la conversation.
- Cerede
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 15
- Remerciements reçus 0
il y a 10 ans 8 mois #15304
par Cerede
Réponse de Cerede sur le sujet Re:Cmdlets dans Select-Object
Alors ça, ça fonctionne
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 10 ans 8 mois #15310
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Cmdlets dans Select-Object
Bonjour,
cerede2000 écrit:
Ok
je n'avais pas fais attention la première fois... Mais avec le 'foreach-object' juste avant le 'export-csv', seule la propriété 'SmtpAddress' est exportée.
[code:1]
|ForEach-Object {$_.SmtpAddress}}} | Export-CSV .\smtp.csv -NoTypeInformation
[/code:1]
Je propose d'essayer :
[code:1]
Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"}
[/code:1]
Puis, si ok :
[code:1]
Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"} | Export-CSV .\smtp.csv -NoTypeInformation
[/code:1]
@ +
Matthew BETTON
cerede2000 écrit:
Alors ça, ça fonctionne
Ok
je n'avais pas fais attention la première fois... Mais avec le 'foreach-object' juste avant le 'export-csv', seule la propriété 'SmtpAddress' est exportée.
[code:1]
|ForEach-Object {$_.SmtpAddress}}} | Export-CSV .\smtp.csv -NoTypeInformation
[/code:1]
Je propose d'essayer :
[code:1]
Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"}
[/code:1]
Puis, si ok :
[code:1]
Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName, RecipientTypeDetails, LinkedMasterAccount, @{Name=\"LastLogedOn\";Expression={(Get-MailboxStatistics -Identity $_.Identity).LastLogonTime}}, PrimarySmtpAddress, @{Name=\"EmailAddresses\";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq \"smtp\"} | Export-CSV .\smtp.csv -NoTypeInformation
[/code:1]
@ +
Matthew BETTON
Connexion ou Créer un compte pour participer à la conversation.
- Cerede
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 15
- Remerciements reçus 0
il y a 10 ans 8 mois #15312
par Cerede
Réponse de Cerede sur le sujet Re:Cmdlets dans Select-Object
Non le ForEach fonctionnait très bien, il est encadré comme il faut entre {}
Ah j'ai testé directement le dernier .
Il manquait juste 2/3 } avant l'export mais sinon parfait
Je ne comprends du coup pas ce qui ne fonctionnait pas dans mon code :|
Merci à toi
Ah j'ai testé directement le dernier .
Il manquait juste 2/3 } avant l'export mais sinon parfait
Je ne comprends du coup pas ce qui ne fonctionnait pas dans mon code :|
Merci à toi
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.076 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Cmdlets dans Select-Object