Les services sont une des parties les plus importantes des systèmes d’exploitation. Il existe différents outils et commandes pour répertorier ces services. Powershell fournit la commandlet Get-Service
afin de lister ces services et de les filtrer acording au filtre fourni.
Nous allons commencer par un cas d’utilisation simple où nous allons lister tous les services sans fournir d’options à la commande Get-Service
. Cela va lister le service actuellement existant avec un statut en cours d’exécution ou arrêté.
PS> Get-Service
Comme nous pouvons le voir sur la capture d’écran les services sont classés par nom par défaut. Les informations suivantes sont fournies par défaut sur les services listés.
-
Status
affichera si le service estRunning
ouStopped
-
Name
affichera le nom réel et court du service qui est utilisé par les commandes. -
Display Name
affichera le nom étendu et informatif du service qui est plus convivial.
Lister tous les services sur l’ordinateur ou le système distant
Comme Microsoft a fourni l’accès à distance et la gestion des systèmes distants avec powreshell, nous pouvons utiliser la commande Get-Service
afin de lister les services sur les systèmes distants. Nous fournirons le -computername
du système distant. Cela peut être un nom DNS qui peut être résolu ou une adresse IP à laquelle nous pouvons accéder.
PS > Get-Service -computername DESKTOP-HQVAMA3
Lister les services avec un nom spécifié
Les systèmes d’exploitation Windows ont beaucoup de services qui rempliront facilement le terminal. Ou nous pouvons avoir besoin de lister un nom de service spécifique en fournissant son nom ou une partie de son nom. Nous allons juste fournir le nom après la commande Get-Service
. Nous pouvons également utiliser *
glob où seule une partie du nom du service sera spécifiée. Dans cet exemple, nous allons essayer de lister le service WinDefend
en fournissant WinDef*
comme nom de service.
PS > Get-Service WinDef*
Lister uniquement les services en cours d’exécution
Il existe deux états de service principaux dans Windows. Running
ou Stopped
. Nous pouvons avoir besoin de lister les services en fonction de leur état. Nous pouvons utiliser le paramètre objet Status
comme ci-dessous qui listera uniquement les services en cours d’exécution.
PS> Get-Service | Where-Object {$_.Status -eq "Running"}
Lister le service avec le service dépendant
Les services sont importants et peuvent être liés et dépendants les uns des autres. Avant de les arrêter, nous pouvons avoir besoin de lister les services dépendants du service donné. Nous pouvons utiliser les options -RequiredServices
afin de lister les dépendances du service.
PS> Get-Service "WinDefend" -RequiredServices
Liste triée par état (Stopped/Running)
Nous pouvons avoir besoin de vérifier la liste des services selon leur état Running et Stopped. Nous pouvons les trier en utilisantSort-Object
comme ci-dessous.
PS> Get-Service | Sort-Object status
Write Service List Into A File
Nous pouvons avoir besoin d’enquêter sur la liste des services plus tard ou nous voulons simplement les enregistrer dans un fichier. Nous pouvons utiliser la commande Out-File
qui écrira la liste des services dans le fichier que nous voulons. Dans cet exemple, nous allons écrire dans un fichier nommé Services.txt
PS> Get-Service | Out-File "C:\Users\İsmail Baydan\Desktop\Services.txt"
.