Comment répertorier tous les services Windows à l'aide de PowerShell ou de la ligne de commande


Les applications en cours d'exécution que vous voyez sur votre écran ne représentent qu'une fraction de ce qui se passe sous Windows. De la gestion des pilotes de périphériques à la garantie de la sécurité, de nombreux processus en arrière-plan maintiennent un PC Windows fonctionnel.

Pour tout administrateur système supervisant plusieurs ordinateurs, il est important de pouvoir visualiser l'état de ces services critiques. L'approche du Gestionnaire des tâches est trop lente pour cela et vous ne pouvez pas l'automatiser avec un script.

La solution ? Outils de ligne de commande. À l'aide du Invite de commande ou PowerShell, vous pouvez rapidement obtenir une lecture des services Microsoft opérationnels exécutés sur un système, vous aidant ainsi à diagnostiquer rapidement tout problème.

Liste des services Windows dans l'invite de commande

Bien qu'il ne soit pas aussi flexible ni aussi puissant que Windows PowerShell, l'invite de commande reste un excellent outil pour les administrateurs système. Vous pouvez utiliser la commande queryex pour obtenir l'état des services actifs et désactivés, puis utilisez la commande taskkill pour mettre fin aux processus embêtants.

  1. Pour utiliser la commande queryex, exécutez l'invite de commande en tant qu'administrateur. Vous pouvez trouver l'application en recherchant cmd dans le menu Démarrer.
    1. Il existe de nombreuses façons d'utiliser la commande sc queryex. Le type et l'état sont les deux paramètres les plus couramment utilisés. Par exemple, saisissez la commande suivante pour afficher tous les processus Windows :
    2. sc queryex type=service state=all

      1. La vue par défaut peut être un peu écrasante. Vous pouvez afficher uniquement les noms des processus pour faciliter l'analyse de la liste :
      2. sc queryex type=service state=all | find /i « SERVICE_NAME : »

        1. Par défaut, la commande répertorie tous les processus actifs. Pour rechercher les inactifs, modifiez le paramètre state :
        2. sc queryex type=service state=inactive

          1. Vous pouvez également interroger l'état d'un processus spécifique par son nom. Ceci est incroyablement utile pour les administrateurs système, car ils peuvent configurer des fichiers de commandes pour vérifier plusieurs processus à la fois. Voici un exemple :
          2. requête sc DeviceInstall

            Liste des services Windows dans PowerShell

            .

            PowerShell est censé être un shell de ligne de commande dédié pour Windows moderne. En tant que tel, il donne accès à presque tous les composants du système d'exploitation via des commandes, et les services Windows ne font pas exception.

            L'avantage de PowerShell est que vous pouvez l'automatiser facilement. Toutes les commandes PowerShell peuvent être compilées dans des scripts complexes, vous permettant de configurer facilement des tâches d'administration système sur plusieurs PC.

            1. Commencez par ouvrir PowerShell. Vous pouvez le rechercher dans le menu Démarrer ; assurez-vous simplement d'exécuter une instance élevée (c'est-à-dire en tant qu'administrateur).
              1. La commande la plus simple pour répertorier les services Windows sur PowerShell est Get-Service . Il affiche tous les services de votre ordinateur, ainsi que leur statut et leurs noms. Le seul problème est que la liste des services peut être assez longue.
                1. Lorsque vous utilisez Get-Service , il est préférable d'exporter la liste vers un fichier texte. Vous pouvez le faire en utilisant des tuyaux, comme ceci :
                2. Obtenir un service | Fichier sortant « C:\logs\All_Services.txt »

                  1. Pour rechercher l'état d'un service spécifique, suivez la commande Get-Service avec le nom du service. Vous pouvez demander l'état de plusieurs processus en séparant leurs noms par des virgules.
                  2. Get-Service CryptSvc, COMSysApp

                    1. Les tuyaux peuvent également être utilisés pour combiner l'applet de commande Get-Service avec la fonction Where-Object et filtrer les résultats par statut. La commande suivante illustre cela en obtenant tous les services en cours d'exécution :
                    2. Obtenir un service | Where-Object {$_.Status -EQ « En cours d'exécution »}

                      Vérification des dépendances du service

                      Tout processus complexe est divisé en plusieurs services interdépendants. C’est pourquoi il ne suffit souvent pas d’obtenir simplement le statut d’un service particulier. Vous devez également vérifier l'état des services dont dépend le service.

                      1. Pour afficher les services requis par un service particulier, utilisez l'indicateur -RequiredServices avec l'applet de commande Get-Service . Voici un exemple :
                      2. .

                        Get-Service -Name CryptSvc –RequiredServices

                        1. De même, pour obtenir une liste des services qui dépendent d'un service spécifique, profitez de l'indicateur -DependentServices .
                        2. Get-Service -Name CryptSvc -DependentServices

                          Ces deux indicateurs sont cruciaux dans l'écriture de scripts pour démarrer ou arrêter automatiquement les services Windows, car ils vous permettent de suivre tous les services connectés au service concerné.

                          Liste des services Windows sur les ordinateurs distants

                          La méthode PowerShell ne se limite pas aux ordinateurs locaux. Vous pouvez également utiliser l'applet de commande Get-Service avec la même syntaxe décrite ci-dessus pour interroger les processus des PC distants. Ajoutez simplement l'indicateur -ComputerName à la fin pour spécifier sur quel ordinateur distant récupérer les informations.

                          Voici un exemple :

                          get-service CryptSvc -ComputerName Workstation7

                          Gestion des services Windows dans PowerShell

                          Obtenir l'état des services n'est pas la seule chose que vous pouvez faire dans Windows PowerShell. En tant qu'environnement de script à part entière, il fournit des alternatives de script à toutes les options de l'interface graphique.

                          Les applets de commande Powershell peuvent arrêter, démarrer, redémarrer ou même modifier les services. Associés aux commandes automatisées Get-Service , des scripts PowerShell peuvent être écrits pour automatiser entièrement les tâches quotidiennes de gestion du système.

                          1. En plus d'interroger l'état des services, vous pouvez également utiliser PowerShell pour les gérer. Le démarrage ou l'arrêt des services peut être effectué avec une seule commande, ne nécessitant que le nom du service. Par exemple, voici comment arrêter un service :
                          2. Spooler Stop-Service -Name

                            1. Le démarrage d'un service se déroule de la même manière :
                            2. Start-Service -Name Spooler

                              1. Si un service ne fonctionne pas correctement, vous pouvez également choisir de le redémarrer :
                              2. Restart-Service -Name Spooler

                                1. Il existe également l'applet de commande Set-Service qui peut être utilisée pour modifier les propriétés d'un service. Ici, nous désactivons le démarrage automatique du service Print Spooler :
                                2. .

                                  Set-Service 'Spooler' -StartupType désactivé

                                  Quelle est la meilleure façon de répertorier les services Windows ?

                                  Que vous utilisiez Windows 10 ou Windows Server, pouvoir afficher une liste de tous les services Windows peut s'avérer pratique. Vous pouvez diagnostiquer les problèmes liés aux fonctions système critiques ou arrêter les services Microsoft inutiles pour améliorer les performances.

                                  À cette fin, PowerShell est la meilleure option. Bien que vous puissiez obtenir une liste de services dans l'invite de commande, la fonctionnalité supplémentaire fournie par PowerShell est plus utile.

                                  Vous pouvez utiliser des applets de commande PowerShell pour obtenir l'état du service des processus Windows, en les filtrant par leur état ou d'autres paramètres. Il est également facile de déterminer les services dépendants et de les démarrer ou de les arrêter selon les besoins.

                                  .

                                  Articles Similaires:


                                  26.06.2022