Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| sysadmin:windows:cli:introduction_a_powershell [2023/06/27 08:44] – yoann | sysadmin:windows:cli:introduction_a_powershell [2026/10/11 11:12] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| {{tag> | {{tag> | ||
| - | : | ||
| ====== PowerShell ====== | ====== PowerShell ====== | ||
| Ligne 17: | Ligne 16: | ||
| * **Système d'aide intégrée**; | * **Système d'aide intégrée**; | ||
| * **Système de pipeline** permettant le chaînage des commandes; | * **Système de pipeline** permettant le chaînage des commandes; | ||
| - | * Prise en charge des**alias** ou noms alternatifs pour les commandes et les paramètres rendant les appels aux traitements similaires à d' | + | * Prise en charge des **alias** ou noms alternatifs pour les commandes et les paramètres rendant les appels aux traitements similaires à d' |
| Powershell a cependant quelques spécificités : | Powershell a cependant quelques spécificités : | ||
| Ligne 65: | Ligne 64: | ||
| # Rechercher les commandes ayant pour verbe get et " | # Rechercher les commandes ayant pour verbe get et " | ||
| Get-Command -Verb Get -Noun *network* | Get-Command -Verb Get -Noun *network* | ||
| + | </ | ||
| + | |||
| + | ==== Appel d'une cmdlet ==== | ||
| + | |||
| + | On peut invoquer une cmdlet via son nom, un alias ou son nom pleinement qualifié : | ||
| + | <code powershell> | ||
| + | # Exécution de la cmdlet via son nom usuel | ||
| + | Get-ChildItem | ||
| + | |||
| + | # Exécution de la même cmdlet via un de ses alias | ||
| + | ls | ||
| + | |||
| + | # Exécution de la cmdlet via son nom pleinement qualifié (module\cmdlet) | ||
| + | Microsoft.PowerShell.Management\Get-ChildItem | ||
| </ | </ | ||
| Ligne 148: | Ligne 161: | ||
| ===== Introspection des objets ===== | ===== Introspection des objets ===== | ||
| - | Les commandes retournent des objets. La réponse fournie par la commande est une mis en forme par défaut ne présentant pas forcément l' | + | Les commandes retournent des objets. La réponse fournie par la commande est une mis en forme par défaut ne présentant pas forcément l' |
| - | On utilise Get-Member à la suite d'une commande pour obtenir les informations sur les objets retournés: | + | On utilise |
| <code powershell> | <code powershell> | ||
| Ligne 172: | Ligne 185: | ||
| </ | </ | ||
| - | Les objets peuvent contenir de nombreux attributs, le filtre **Select-object** permet de filtrer/ | + | ===== Filtres ===== |
| + | |||
| + | Les objets peuvent contenir de nombreux attributs, le filtre **Select-Object** permet de filtrer/ | ||
| <code powershell> | <code powershell> | ||
| Ligne 178: | Ligne 193: | ||
| # Process retourné par la commande Get-Process | # Process retourné par la commande Get-Process | ||
| Get-Process -Name " | Get-Process -Name " | ||
| + | </ | ||
| + | |||
| + | La cmdlet **Where-Object** permet de filtrer les objets en fonction des valeurs de leurs attributs : | ||
| + | |||
| + | <code powershell> | ||
| + | # Certaines commandes permettent de filtrer en spécifiant une valeur | ||
| + | # d' | ||
| + | Get-Service -Name EventLog | ||
| + | |||
| + | # Equivalent via Where-Object | ||
| + | Get-Service | Where-Object Name -EQ " | ||
| </ | </ | ||
| Ligne 192: | Ligne 218: | ||
| </ | </ | ||
| - | La vue par défaut associée à l' | + | La vue par défaut associée à l' |
| Les commandes **Format-*** permettent d' | Les commandes **Format-*** permettent d' | ||
| Ligne 423: | Ligne 449: | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * [[https:// | ||