# Introduction à PowerShell, boîte à outils de l’administrateur système

L’importance des administrateurs système dans les entreprises ne doit pas être sous-estimée, car ce n’est qu’avec une infrastructure informatique fiable et fonctionnant en permanence qu’une entreprise peut atteindre le maximum de son efficacité économique. Selon la taille de l’organisation, cela nécessite **la surveillance et le contrôle de dizaines, voire de centaines d’ordinateurs simultanément**. C’est une tâche gigantesque que seuls des spécialistes formés ayant une connaissance approfondie des connexions internes au système peuvent maîtriser.

Si un problème survient avec plusieurs ordinateurs en même temps ou si une nouvelle solution de sécurité doit être chargée sur l’ensemble du réseau le plus rapidement possible, il ne serait ni rapide ni économique pour un administrateur de visiter chacun des appareils et de répéter toujours les mêmes actions. **Windows PowerShell** permet **d’accélérer considérablement ces processus et d’automatiser autant que possible les tâches de routine**. Cela simplifie grandement le travail de l’administrateur système. Vous pouvez également découvrir ce que le logiciel peut faire dans notre article.

[![Image: Fenêtre Windows PowerShell](https://www.ionos.fr/digitalguide/fileadmin/_processed_/1/4/csm_powershell-1_d3d39e89a0.webp "Fenêtre Windows PowerShell")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-1.png) Windows PowerShell ressemble beaucoup à l’invite de commande à première vue, mais présente quelques différences essentielles       ##  Qu’est-ce que Windows PowerShell?

Windows PowerShell est, comme son nom l’indique, un ***shell***. En informatique, c’est une **interface entre un ordinateur et son utilisateu**r. Le terme anglais *shell* signifie *coquille*, mais au sens figuré, il est utilisé pour décrire une coquille extérieure. C’est également le cas en informatique, où le terme désigne **l’interface utilisateur visible** à travers laquelle on peut interagir avec les fonctions internes du système d’un ordinateur.

Les shells sont **généralement orientés commande et sont donc contrôlés exclusivement par le clavier et la saisie de texte**. Ils constituent donc une alternative aux interfaces utilisateur graphiques (*graphical user interfaces,* abrégés par *GUI*), qui se naviguent principalement à la souris, de même que l’Explorateur Windows. Dans la mesure où les shells permettent également d’accéder à des fonctions et des composants beaucoup plus nombreux et profonds d’un PC, ils sont préférés par de nombreux professionnels de l’informatique et administrateurs système.

## Pourquoi Windows PowerShell ?

Jusqu’à récemment, la **ligne de commande command.com et l’invite de commande cmd.exe** étaient respectivement les shells par défaut des systèmes d’exploitation DOS et Windows. Ils peuvent être utilisés par les utilisateurs d’ordinateurs avancés pour ouvrir des applications de console, résoudre des problèmes ou naviguer sur les lecteurs d’un PC. Par exemple, la commande [netstat](https://www.ionos.fr/digitalguide/serveur/outils/introduction-a-netstat/ "Introduction à Netstat") peut être utilisée pour obtenir des informations de base sur toutes les activités réseau. Cependant, *command.com* et *cmd.exe* ont toujours rencontré deux problèmes : **tous les composants du système ne sont pas accessibles par leur intermédiaire**, et **leurs langages de script sont considérés comme limités en fonctionnalité**. Ainsi, depuis quelque temps déjà, ils sont considérés comme moins aboutis que les shells Linux et Unix courants.

Les développeurs de Microsoft avaient donc prévu de supprimer ces restrictions depuis les années 1990. Au fil du temps, ils ont développé divers shells avec lesquels ce plan a réussi, parfois bien parfois moins bien. **Monad**, lancé pour la première fois en 2003 et rebaptisé **PowerShell** trois ans plus tard, s’est révélé particulièrement révolutionnaire.

Les *Common Engineering Criteria* de Microsoft, selon lesquels tous les produits serveurs de l’entreprise doivent supporter PowerShell depuis 2009, en ont fait la **solution centrale de gestion et d’automatisation sous Windows**. À partir de Windows 2008, il a été livré avec le système d’exploitation en option, les versions ultérieures ont été livrées avec le système d’exploitation en standard, et comme **framework open source**, il est également disponible en téléchargement pour les versions antérieures de Windows.

[![Image: Windows PowerShell dans les résultats de recherche de Windows Explorer.](https://www.ionos.fr/digitalguide/fileadmin/_processed_/8/4/csm_powershell-2_51ace583b1.webp "Windows PowerShell dans les résultats de recherche de Windows Explorer.")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-2.png) Windows PowerShell est installé par défaut sur toutes les versions de Windows à partir de 2008.       En 2016, il a été décidé de proposer une **plateforme Shell indépendante**. L’intention de Microsoft était qu’à l’avenir, PowerShell deviendrait également un **outil universel pour les administrateurs système** en dehors de Windows, c’est-à-dire sous Linux et MacOS. Depuis, PowerShell s’est de plus en plus répandu et trouve constamment de nouveaux soutiens. En résumé, PowerShell est le successeur attendu depuis longtemps de l’invite de commande.

## Qu’est-ce qui différencie PowerShell de l’invite de commande ?

En quoi le nouveau framework Microsoft diffère-t-il exactement de l’invite de commande habituelle ? Pour faire simple**, PowerShell possède toutes les fonctionnalités de cmd.exe, peut en faire beaucoup mieux, et fait d’autres choses qui étaient jusqu’alors impossibles sous Windows.**

En principe, PowerShell fournit **la même gamme de commandes que cmd.exe.** Pour résumer, PowerShell peut être utilisé de la même manière que l’invite de commande, avec une connaissance suffisante des commandes standard. Cependant, il permet également d’accéder à des fonctions internes Windows plus approfondies, telles que le **registre** et **Windows Management Instrumentation (WMI)**, qui n’étaient pas accessibles auparavant avec cmd.exe. De plus, la ligne de commande de Windows PowerShell suit **la logique claire d’une structure de commande et d’une syntaxe** cohérentes et à cet égard est plus significative que cmd.exe.

Windows PowerShell se distingue également par une autre caractéristique : contrairement aux invites de commandes et aux systèmes de type Unix, le programme fonctionne **entièrement basé sur les objets** au lieu de se contenter d’enchaîner les résultats des commandes. Chaque objet possède à la fois des **propriétés** **(*properties*)** et des **méthodes** **(*methods*)** qui spécifient comment il peut être utilisé. Par exemple, l’objet de processus Windows représente des propriétés telles que les noms et ID de processus et les méthodes de pause et d’interruption des processus.

Dans la mesure où les résultats des commandes sont toujours transmis sous forme d’objets .NET, **PowerShell peut être utilisé pour effectuer des tâches beaucoup plus complexes que cmd.exe.** Ceci fonctionne en utilisant la sortie d’un objet dans le tube comme entrée pour l’objet suivant. Par exemple, vous pouvez filtrer des quantités importantes et complexes de données pour les extensions de fichiers et les formater sous forme de liste claire.

Windows PowerShell est plus qu’une simple ligne de commande, c’est un **environnement de script complet et puissant.** Vous pouvez écrire vos propres commandes ou combiner plusieurs commandes dans des scripts complexes qui simplifient les tâches de gestion du système. **Remoting** permet également d’exécuter des scripts sur n’importe quel nombre de systèmes en même temps, quel que soit leur emplacement, et donc de gérer, configurer, capturer et réparer ces scripts.

Cette variété d’options et de fonctionnalités révèle également quel est le public principal de Windows PowerShell : **les professionnels de l’informatique et les administrateurs système** qui ont une connaissance approfondie de l’utilisation des shells et qui sont prêts à apprendre Windows PowerShell pour une efficacité nettement supérieure. Pour les utilisateurs qui travaillent principalement avec l’interface graphique Windows et n’utilisent l’invite de commande que sporadiquement, PowerShell n’offre aucune valeur ajoutée particulière, d’autant plus que le temps nécessaire à la familiarisation est assez long.

Voici un aperçu des **avantages et des inconvénients de Windows PowerShell** sur l’invite de commande :

<table>
  <thead>
    <tr>
      <th>Avantages de PowerShell</th>
      <th>Inconvénients de PowerShell</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Toutes les commandes sont disponibles à l’invite de commandes</td>
      <td>Processus d’apprentissage complexe et exigeant</td>
    </tr>
    <tr>
      <td>Accès à des ressources internes Windows plus profondes telles que le registre et WMI</td>
      <td>S’adresse principalement aux professionnels de l’informatique et aux administrateurs système.</td>
    </tr>
    <tr>
      <td>Fonctionnement plus efficace grâce à une structure de commande et une syntaxe cohérentes</td>
      <td>Aucun avantage supplémentaire pour les utilisateurs de l’interface graphique qui utilisent rarement l’invite de commande.</td>
    </tr>
    <tr>
      <td>L’orientation objet complète permet l’exécution de tâches plus complexes par pipelining</td>
      <td>Nécessite un effort d’adaptation</td>
    </tr>
    <tr>
      <td>Un environnement de script étendu permet une automatisation efficace des processus</td>
      <td></td>
    </tr>
    <tr>
      <td>Administration indépendante de l’emplacement de plusieurs systèmes par télécommande</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Comment fonctionne Windows PowerShell ?

PowerShell se compose essentiellement de deux parties, le **moteur PowerShell** et le **langage de script PowerShell**. Les deux peuvent être utilisés séparément ou en combinaison pour tirer le meilleur parti du programme.

### Le moteur PowerShell

**L’interpréteur de ligne de commande** (en anglais *command-line interpreter,* abrégé par *CLI*) de PowerShell permet à l’utilisateur **d’accéder aux fonctions internes du système d’exploitation via le clavier**. Les commandes correspondantes du programme sont appelées ***cmdlets*** (prononcées *commandlets*, ce qui signifie *petites commandes*). Selon une syntaxe cohérente, ils sont toujours composés **d’un verbe et d’un nom au singulier**, par exemple, *Stop-Process* ou *Sort-Object*. Les paramètres sont spécifiés dans un *cmdlet* en fonction du paramètre de formule *Parameter \[Valeur\]*, par exemple :

```none
Get-EventLog System Newest 3 (pour ouvrir les trois dernières entrées du journal des événements système.)
```

---

### Conseil

Bien qu’il s’agisse d’une convention dans PowerShell pour entrer des commandes avec une lettre majuscule, les minuscules fonctionnent aussi bien.

---

Les plus de 100 cmdlets de base comprennent également des commandes standard fréquemment utilisées à partir de l’invite de commande, qui sont disponibles sous forme **d’alias** entre autres, et sont destinées à faciliter la prise en main du nouveau shell par les utilisateurs. Par exemple, la commande *cd* utilisée pour changer un répertoire a l’équivalent *Set-Location*, qui exécute exactement la même fonction. Tous les alias pré-construits peuvent être affichés à l’aide du cmdlet *Get-Alias*. Vous pouvez également utiliser le cmdlet *Set-Alias* pour créer vos propres alias. Par exemple, vous pouvez utiliser le tube suivant pour assigner l’alias *ed* à la commande *notepad* (pour le programme Notepad) afin de ne pas avoir à saisir autant de fois que nécessaire pour exécuter le programme :

```none
Set-Alias ed notepad (pour ouvrir Notepad avec la commande ed)
Set-Alias scr1 C:\Users\IEUser\Desktop\script1.ps1 (pour exécuter un script avec l’abréviation scr1)
```

[![Image: Résultats des Cmdlets Get-Alias](https://www.ionos.fr/digitalguide/fileadmin/_processed_/2/e/csm_powershell-3_73618fbf59.webp "Résultats des Cmdlets Get-Alias")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-3.png) Avec les Cmdlet Get-Alias tous les alias par défaut de PowerShell sont affichés.     Le tableau suivant contient quelques exemples **de cmdlets couramment utilisés et leurs alias associés** :

<table>
  <thead>
    <tr>
      <th>Alias</th>
      <th>Cmdlet</th>
      <th>Fonction</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>cd</td>
      <td>Set-Location</td>
      <td>Modifier le répertoire courant</td>
    </tr>
    <tr>
      <td>dir</td>
      <td>Get-ChildItem</td>
      <td>Lister tous les éléments d’un dossier</td>
    </tr>
    <tr>
      <td>gi</td>
      <td>Get-Item</td>
      <td>Appeler un élément spécifique</td>
    </tr>
    <tr>
      <td>ps</td>
      <td>Get-Process</td>
      <td>Lister tous les processus</td>
    </tr>
    <tr>
      <td>gsv</td>
      <td>Get-Service</td>
      <td>Lister tous les services installés</td>
    </tr>
    <tr>
      <td>gm</td>
      <td>Get-Member</td>
      <td>Afficher toutes les propriétés et méthodes d’un objet</td>
    </tr>
    <tr>
      <td>clear</td>
      <td>Clear-Host</td>
      <td>Vider l’hôte PowerShell</td>
    </tr>
  </tbody>
</table>

La structure de commande stricte et facile à suivre de PowerShell vous permet de travailler plus efficacement qu’à l’invite de commande. L’option de compléter automatiquement les **cmdlets en cours d’écriture avec la touche \[Tab\] permet de gagner encore plus de temps**. Dans de nombreux cas, le programme détecte même les commandes incomplètement tapées.

Les cmdlets peuvent être **utilisés individuellement ou en pipeline** pour que la sortie d’un objet puisse être lue et réutilisée par l’objet suivant. Pour ajouter deux cmdlets à la même pipeline, utilisez simplement le symbole |. De cette façon, par exemple, vous pouvez lister tous les processus disponibles et les trier par ID en même temps :

```none
Get-Process | Sort-Object ID
```

[![Image: Résultats de la pipeline Get-Process | Sort-Object ID](https://www.ionos.fr/digitalguide/fileadmin/_processed_/9/b/csm_powershell-4_3d536c799a.webp "Résultats de la pipeline Get-Process | Sort-Object ID")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-4.png) Le pipelining permet à Windows PowerShell de gérer des tâches complexes, telles que la visualisation de tous les processus et leur tri par ID.     Les variables sont définies avec le symbole $. Comme d’habitude, elles peuvent être utilisées pour **stocker des outputs** qui seront récupérés ultérieurement pendant le pipelining. Ceci permet même à PowerShell de **stocker les résultats de plusieurs commandes en pipeline à la fois**, par exemple :

```none
$a = (Get-Process | Sort-Object ID)
```

### Le langage de script PowerShell

Une grande partie du [langage de script](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/quest-ce-quun-langage-de-script/ "Qu’est-ce qu’un langage de script&nbsp;?") de PowerShell peut vous sembler familière à partir de C# et d’autres langages de script. Non seulement vous pouvez l’utiliser pour écrire vos propres cmdlets (et les partager avec d’autres utilisateurs si nécessaire), mais vous pouvez **également regrouper plusieurs commandes consécutives dans un fichier script.ps1** pour **étendre les fonctionnalités du shell**. De nombreux exemples d’application sont envisageables, de l’exécution de tâches de routine simples à l’automatisation presque complète des processus de surveillance et de contrôle. Les scripts contiennent toujours une description de l’application et sont exécutés avec le préfixe « . » suivi du chemin complet du fichier. Voici un exemple :

```none
.C:\Users\IEUser\Desktop\script1.ps1
```

## Quelles sont les applications spécifiques de PowerShell?

Si vous avez suffisamment de pratique et d’expertise, PowerShell peut rendre de nombreuses **tâches d’administration système beaucoup plus efficaces.** Vous trouverez ci-dessous quatre exemples d’applications représentatives.

### Organisation du répertoire : renommer plusieurs fichiers à la fois

Supposons que vous deviez renommer environ 1 000 documents du schéma *Texte (1)[.docx](https://www.ionos.fr/digitalguide/web-marketing/vendre-sur-internet/quest-ce-quun-fichier-docx/ "Qu’est-ce qu’un fichier .docx&nbsp;?"), Texte (2).docx*, etc. pour que les espaces du nom de fichier soient remplacés par des tirets : dans ce cas, il ne serait pas souhaitable de renommer chaque document un par un. À la place, vous utiliserez probablement *cmd.exe* ou, mieux encore, un outil externe. **Le pipelining dans PowerShell offre encore plus de flexibilité lors du renommage de grandes quantités de données.**

Pour ce faire, allez d’abord dans **le répertoire dans lequel se trouvent les documents**. Vous pouvez le faire facilement avec le cmdlet *Set-Location* en combinaison avec le chemin de fichier complet. En voici un exemple :

```none
Set-Location C:\Users\IEUser\Desktop\Text folder
```

[![Image: Zone de saisie dans le chemin d’un répertoire dans lequel powershell a été saisi.](https://www.ionos.fr/digitalguide/fileadmin/_processed_/1/1/csm_powershell-5_2385dcaec4.webp "Zone de saisie dans le chemin d’un répertoire dans lequel powershell a été saisi.")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-5.png) En entrant le terme powershell dans le chemin d’un répertoire, vous ouvrez une fenêtre PowerShell à ce stade au lieu d’avoir à y naviguer par saisie de texte.     Vous pouvez également **utiliser l’Explorateur Windows pour naviguer jusqu’au répertoire approprié, cliquer sur la barre de chemin et taper *powershell*** pour ouvrir une fenêtre PowerShell pour ce répertoire. Utilisez ensuite le cmdlet suivant pour renommer les documents sélectionnés :

```none
Get-ChildItem *docx | Rename-Item -NewName {$_.name -replace " ","_"}
```

Explication : *Get-ChildItem* liste tous les fichiers du répertoire. Avec l’ajout *\*docx*, seuls les documents Word avec le format correspondant sont filtrés : les documents PDF qui se trouvent également dans le dossier ne seront donc pas pris en compte. Le symbole | ajoute une autre commande au pipeline, *Rename-Item*, qui indique que quelque chose doit être renommé. *-NewName* spécifie le nouveau nom en utilisant un bloc de script qui fonctionne avec la variable *$\_.name* qui représente l’objet courant. *Et .name* est la propriété avec le nom du fichier. Enfin, utilisez le paramètre *-replace* pour spécifier que tous les espaces doivent être convertis en tirets.

[![Image: Résultat du renommage des fichiers via PowerShell](https://www.ionos.fr/digitalguide/fileadmin/_processed_/a/1/csm_powershell-6_7dbdd084d0.webp "Résultat du renommage des fichiers via PowerShell")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-6.png) Si vous avez prédéfini \*docx comme format de fichier, le PDF sera exclu du renommage.       ###  Collecte de données : vérification des services en cours d’exécution sur un PC

Avant de mettre en œuvre une nouvelle solution de sécurité sur le réseau, vous devez **vérifier quels services sont déjà installés sur un PC particulier**. L’outil de base pour cela est le cmdlet *Get-Service*, qui liste tous les services. Les **fonctions de filtre de PowerShell** vous permettent également de ne visualiser qu’un sous-ensemble des résultats, par exemple tous les services en cours d’exécution. Ceci fonctionne avec le cmdlet suivant :

```none
Get-Service | Where-Object {$_.status -eq "running"}
```

L’output de *Get-Service* achemine vers le cmdlet *Where-Object.* *Where-Object* filtre tous les services par leur statut (représenté par la variable *$\_.status* et le paramètre *-eq "running"*) et liste les services en cours d’exécution. Vous pouvez également **trier** la liste préfiltrée par nom d’affichage si nécessaire en ajoutant un autre cmdlet au pipeline :

```none
Get-Service | Where-Object {$_.status -eq "running"} | Sort-Object DisplayName
```

[![Image: Résultats de la Pipeline Get-Service | Where-Object {$_.status –eq "running"} | Sort-Object DisplayName](https://www.ionos.fr/digitalguide/fileadmin/_processed_/e/6/csm_powershell-7_262e02df39.webp "Résultats de la Pipeline Get-Service | Where-Object {$_.status –eq "running"} | Sort-Object DisplayName")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-7.png) Vous pouvez utiliser les fonctions de filtre PowerShell pour afficher un sous-ensemble des services installés sur un système.       ---

### Conseil

Avec l’extension pipeline *more*, vous pouvez également restructurer la longue liste de services afin de pouvoir la parcourir page par page.

---

### Erreur de diagnostic : recherche d’erreurs système dans le journal des événements

Les journaux d’événements (*event logs* en anglais) fournissent aux administrateurs système des informations sur les messages d’erreur dans les applications, dans le système d’exploitation ou dans les fonctions de sécurité d’un périphérique. Utilisez la commande *Get-EventLog* pour **afficher et gérer ces journaux**. Par exemple, si vous souhaitez consulter les messages d’erreur dans l’Observateur d’événements système, saisissez ceci :

```none
Get-EventLog System | Where-Object {$_.entryType -Match "Error"}
```

Si PowerShell renvoie trop de résultats, vous pouvez utiliser le paramètre *-Newest 100* pour limiter la liste aux 100 dernières entrées du journal système, qui sont ensuite filtrées pour les erreurs :

```none
Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"}
```

Pour des informations détaillées sur les messages d’erreur, transférez la sortie de ce pipeline vers le cmdlet *Format-List* :

```none
Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"} | Format-List
```

[![Image: Résultats de la pipeline Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"} et Fortmat-List](https://www.ionos.fr/digitalguide/fileadmin/_processed_/3/4/csm_powershell-8_22f60c7ef4.webp "Résultats de la pipeline Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"} et Fortmat-List")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-8.png) De grandes quantités de données, telles que les journaux d’événements, peuvent être agrégées et visualisées de plus près selon les critères que vous choisissez.       ###  Maintenance à distance : services de contrôle sur ordinateurs distants

Le **Windows Management Instrumentation (WMI)** donne accès à presque tous les paramètres et fonctions des ordinateurs Windows, ce qui en fait l’outil le plus important pour l’automatisation des processus et la maintenance à distance des postes de travail numériques. Vous pouvez également utiliser le cmdlet *Get-WmiObject* pour les ordinateurs distants, de sorte que vous pouvez également **utiliser Windows PowerShell comme outil de gestion système**. Par exemple, si vous avez besoin d’informations de classe Win32\_BIOS sur une machine du réseau (représentée par le paramètre *-machinename*), la commande suivante vous aidera :

```none
Get-WmiObject Win32_Bios -Machinename
```

Autrement, vous pouvez travailler avec le paramètre *-Class* suivi du chemin complet de la classe :

```none
Get-WmiObject - Machinename -Class Win32_Service
```

Vous pouvez maintenant accéder à distance aux paramètres système internes de l’ordinateur externe. L’exemple suivant illustre comment récupérer les méthodes du service Windows Update Client pour savoir quels cmdlets peuvent être utilisés pour le démarrer, l’arrêter et le redémarrer :

```none
Get-WmiObject -machinename -Class Win32_Service -Filter "Name=‘wuauserv’"
```

[![Image: Résultats de la pipeline Get-WmiObject -Machinename -Class Win32_Service -Filter "Name=‘wuauserv’"](https://www.ionos.fr/digitalguide/fileadmin/_processed_/7/3/csm_powershell-9_7667d52edc.webp "Résultats de la pipeline Get-WmiObject -Machinename -Class Win32_Service -Filter "Name=‘wuauserv’"")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-9.png) Avec le cmdlet Get-WmiObject vous pouvez accéder non seulement aux réglages et fonctions internes d’un ordinateur distant, mais aussi à ceux de votre propre ordinateur.     Le nom d’hôte *Get-WmiObject-Machinename* cible d’abord l’hôte désiré et sélectionne ensuite la classe *Win32\_Service* en utilisant le paramètre *-Class*. Le client Windows Update Client avec l’abréviation *wuauserv* est alors filtré à partir des services existants. Avec le cmdlet *Get-Member* déjà connu et le paramètre de méthode *-Type Method*, vous obtenez un aperçu de toutes les méthodes de *wuauserv* qui vous permettent de contrôler complètement le client à distance.

```none
Get-WmiObject -Machinename -Class Win32_Service -Filter "Name=‘wuauserv’" | Get-Member -Type Method
```

[![Image: Résultats de la pipeline Get-WmiObject -Machinename -Class Win32_Service -Filter "Name=‘wuauserv’" | Get-Member -Type Method](https://www.ionos.fr/digitalguide/fileadmin/_processed_/6/6/csm_powershell-10_caf0547c45.webp "Résultats de la pipeline Get-WmiObject -Machinename -Class Win32_Service -Filter "Name=‘wuauserv’" | Get-Member -Type Method")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/powershell-10.png) Le cmdlet Get-Member liste toutes les propriétés et méthodes disponibles pour un objet.NET.


This is a markdown version of: [https://www.ionos.fr/digitalguide/serveur/know-how/windows-powershell/](https://www.ionos.fr/digitalguide/serveur/know-how/windows-powershell/) for AI/LLM consumption.