« Programmation PowerShell/Les objets personnalisés » : différence entre les versions

Contenu supprimé Contenu ajouté
Balises : Modification par mobile Modification par le web mobile
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
Ligne 12 :
L'exemple ci-dessous vous montre comment créer un objet correspondant à vos besoins :
 
<sourcesyntaxhighlight lang="powershell">
$myObject = New-Object -TypeName pscustomobject
$myObject | Add-Member -MemberType NoteProperty -Name 'ID' -Value '1'
Ligne 18 :
$myObject | Add-Member -MemberType NoteProperty -Name 'Name' -Value 'Alfonso'
$myObject
</syntaxhighlight>
</source>
 
= Récupérer un objet ne contenant que ce dont on a besoin =
Ligne 24 :
L'exemple ci-dessous vous montre comment obtenir les propriétés désirées d'un objet comportant des dizaines de propriétés :
 
<sourcesyntaxhighlight lang="powershell">
$obj = $myObject | Select-Object -Property Name, ID
$obj
</syntaxhighlight>
</source>
 
= Ajouter un objet à une collection =
Ligne 33 :
L'exemple ci-dessous vous montre comment ajouter vos objets dans une collection :
 
<sourcesyntaxhighlight lang="powershell">
$obj2 = New-Object -TypeName pscustomobject
$obj2 | Add-Member -MemberType NoteProperty -Name 'Name' -Value 'Bertha'
Ligne 42 :
$maCollection += $obj2
$maCollection
</syntaxhighlight>
</source>
 
= Boucler et enrichir la collection d'objets =
Ligne 48 :
Il est important de savoir ajouter, petit à petit des informations dans vos objets :
 
<sourcesyntaxhighlight lang="powershell">
$maCollection | ForEach-Object { $_ | Add-Member -Type NoteProperty -Name 'NewThing' -Value 'NewValue' }
# ou
Ligne 55 :
$maCollection | ForEach-Object { $_ | Add-Member 'NewThing3' 'NewValue3' }
$maCollection
</syntaxhighlight>
</source>
 
Il est utile de savoir ajouter des valeurs calculées dans vos objets :
 
<sourcesyntaxhighlight lang="powershell">
$maCollection | ForEach-Object { $_ | Add-Member @{'idTime3'=($_.ID * 3)} }
# ou
$maCollection | ForEach-Object { $_ | Add-Member 'idTime3bis' ($_.ID * 6) }
</syntaxhighlight>
</source>
 
= Aller plus loin avec les objets =