0% ont trouvé ce document utile (0 vote)
16 vues18 pages

Cmdlets PowerShell : Gestion des Commandes

Le document explique comment utiliser la cmdlet Get-Command pour lister les commandes disponibles dans PowerShell, y compris celles d'un module spécifique comme Dism. Il aborde également la gestion des processus avec Get-Process, permettant de lister, arrêter et démarrer des processus, ainsi que la gestion des services avec des cmdlets comme Get-Service, Start-Service, Restart-Service et Stop-Service. Ces cmdlets facilitent la gestion des processus et des services dans un environnement Windows.

Transféré par

oussamaelkeurti1
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
16 vues18 pages

Cmdlets PowerShell : Gestion des Commandes

Le document explique comment utiliser la cmdlet Get-Command pour lister les commandes disponibles dans PowerShell, y compris celles d'un module spécifique comme Dism. Il aborde également la gestion des processus avec Get-Process, permettant de lister, arrêter et démarrer des processus, ainsi que la gestion des services avec des cmdlets comme Get-Service, Start-Service, Restart-Service et Stop-Service. Ces cmdlets facilitent la gestion des processus et des services dans un environnement Windows.

Transféré par

oussamaelkeurti1
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

1.

Lister toutes les commandes :


Get-Command
La commande Get-Command est utilisée pour obtenir des informations sur les commandes
PowerShell disponibles dans votre environnement. Vous pouvez l'utiliser de différentes
manières pour lister toutes les commandes, filtrer par module, ou rechercher des commandes
spécifiques. Voici quelques exemples :
Pour en connaître le nombre, écrivez :

Get-Command -CommandType Cmdlet


Cela affichera uniquement les résultats qui correspondent au type de commande "Cmdlet"

La colonne CommandType
dans la sortie de la
commande Get-Command
vous permet de filtrer les
résultats en fonction du
type de commande. Vous
pouvez utiliser cette
fonctionnalité pour
rechercher spécifiquement
des cmdlets, des fonctions,
des alias, des scripts, etc.
La cmdlet Get-Command liste les commandes agissant sur un ou des services. Les commandes
sont listées au sein de la colonne Name, et l’on remarque qu’elles ont toutes le même nom
(service). Voici une ligne de commande plus précise que la précédente :
Get-Command -Noun 'service' | Select-Object -Property Verb

2. Lister les commandes d'un module spécifique (par exemple, Dism) :

Get-Command -Module Dism

A. La commande Get-Command -Module Dism vous permettre d’afficher toutes les


commandes (cmdlets, fonctions, workflows, alias) incluses dans le module Dism
(Deployment Image Service and Management Tool) dans PowerShell.

B. En exécutant cette commande dans PowerShell, vous aurez accès à une liste
complète des commandes présentes dans le module Dism. Voici un exemple de
sortie possible :
C. La liste des commandes du module Dism est affichée, y compris leur type (Cmdlet
dans cet exemple), leur nom, leur version et la source du module. Vous pouvez
utiliser ces commandes pour gérer les images de déploiement et effectuer d'autres
opérations liées à la gestion des images Windows.

 En résumé, Get-Command seul liste toutes les commandes disponibles, tandis que Get-
Command -Module Dism (Deployment Image Service and Management Tool) vous
permet de filtrer les résultats pour afficher uniquement les commandes du module
Dism. Cette fonctionnalité peut être utile si vous souhaitez explorer les commandes
disponibles dans un module spécifique sans être submergé par l'ensemble des
commandes disponibles dans votre environnement.
 Il est important de noter que l'on peut toujours affiner un peu plus les résultats. Par
exemple, on peut afficher seulement les commandes du type "Cmdlet" :
Get-Command -Name *Service* -CommandType Cmdlet
Processus :
La gestion des processus au niveau des postes de travail est une tâche essentielle. L'objectif est
de connaître en permanence l'ensemble des programmes qui sont en cours d'exécution sur
Windows, ainsi que les ressources matérielles utilisées (processeur et mémoire).
Il sera possible d'effectuer les mêmes actions que dans le Gestionnaire des tâches Windows :
terminer ou lancer de nouveaux processus, mais également obtenir plus d'informations sur ces
derniers.

1. Obtenir la liste des processus


La cmdlet permettant de récupérer l’ensemble des processus actifs sur le poste de travail est :
Get-Process.
Voici quelques paramètres utilisables avec cette cmdlet :
Exemple : obtenir la liste de tous les processus actifs sur le poste local :

Afin de comprendre le contenu des différentes colonnes fournies par la commande Get-Process,
voici un tableau explicatif de chacune des propriétés :
Pour cibler les processus, vous pouvez, avec l’aide du paramètre -Name, écrire le nom des
fichiers exécutables. Cela a pour effet d’afficher uniquement les processus concernés. Par
exemple :

Il est possible de faire la même chose avec le paramètre -Id et de mentionner un ou plusieurs
numéros d’identifiant de processus :

Avec l’aide du paramètre -FileVersionInfo, il est possible de récupérer le numéro de version du


fichier qui exécute le processus. Voici le résultat avec le processu PowerShell_ISE:
Il est possible d’obtenir beaucoup plus d’informations sur chacun des processus.
La liste est longue, et ne sera pas entièrement détaillée, mais il faut savoir qu’elle
existe, car il est possible d’y trouver de précieuses informations. Celle-ci est
accessible grâce à la commande suivante :
Voici un tableau récapitulatif des propriétés les plus importantes :

2. Arrêter un processus :
Pour arrêter un processus avec Windows PowerShell, il existe la cmdlet Stop-Process.
Exemple : arrêter tous les processus de même nom
La commande suivante arrête tous les processus Windows Explorer.

3. Démarrer un processus
Pour lancer un nouveau processus, il est nécessaire de donner en paramètre l’exécutable du
programme à lancer, avec la cmdlet Start-Process. Voici des paramètres utilisables avec cette
dernière

Exemple 1 : démarrer un processus (Word) :


Exemple 2 : démarrer un processus (Calculatrice)

Dans le cas précédent, le chemin complet à l’exécutable ([Link]) n’est pas donné, car celui-ci
est présent dans la variable d’environnement PATH de Windows (C:\Windows\System32).
Start-Process permet également de donner des paramètres à l’exécutable qui sera lancé. Cela se
fait par l’intermédiaire du paramètre -ArgumentList.
Exemple 3 : démarrer un processus avec un argument
4. Démarrer une app
Voici un tableau récapitulant les apps qui peuvent être lancées de cette façon :

Pour le cas de Microsoft Edge, il est toujours possible d’ouvrir l’application en spécifiant la page
d’accueil souhaitée. Voici un exemple :

Cette commande permet de lancer Internet Explorer en ouvrant directement le site Internet de
La Cité Collégiale. Vous pouvez donc spécifier, grâce au paramètre -ArgumentList, les options
d’exécution que l’exécutable peut être en mesure d’interpréter.
Les services
Les services Windows sont des programmes qui, en fonction de leur mode de démarrage,
tournent en permanence, ou démarrent uniquement en cas de besoin. Ces services peuvent
également être désactivés, et dans ce cas ne jamais démarrer. Chaque service exécute en réalité
un ou plusieurs processus visibles dans le Gestionnaire des tâches.

Liste des services


Le gestionnaire de services Windows propose quatre modes de démarrage que vous pouvez
configurer pour chacun des services :

1. Les manipulations de base


Avec Windows PowerShell, la gestion des services et des processus se fait de façon similaire. Les
cmdlets utilisées sont :
 Get-Service : récupère l’état d’un ou plusieurs services.
 Start-Service : démarre un ou plusieurs services.
 Restart-Service : redémarre un ou plusieurs services.
 Stop-Service : arrête un ou plusieurs services.
a. Obtenir des informations sur les services
Pour commencer, la commande Get-Service permet de récupérer l’état de chaque
service présent dans Windows. Voici une présentation des paramètres utilisés pour cette
cmdlet :

Exemple : obtenir la liste de tous les services et leur statut sur le poste local
La colonne Status permet de voir si le service est démarré (Running) ou non (Stopped). Il s’agit
d’une propriété propre à chacun des services. Par conséquent, si vous souhaitez connaître
l’ensemble des services démarrés, écrivez :
Get-Service | Where-Object {$_.Status -eq "Running"}
Pour obtenir des informations complémentaires, vous pouvez également lister l’ensemble des
propriétés sur un service en particulier :

b. Démarrer un service
Start-Service permet le démarrage des services. Voici l’ensemble des paramètres :

Dans l'ensemble, il est fortement conseillé d'utiliser le nom (-Name) de service plutôt que le
nom affiché(-DisplayName). Il est vrai que le nom du service est commun, quelle que soit la
langue utilisée sur Windows, contrairement au nom d'affichage. De cette manière, vous évitez
les mauvaises surprises si vous utilisez cette commande dans un script qui sera exécuté sur des
postes de travail non homogènes.
Exemple 1 : démarrer un service avec son nom (-Name) :

Exemple 2 : démarrer un service avec son nom d’affichage (-DisplayName) :

c. Redémarrer un service
Restart-Service permet le redémarrage des services. Il est possible de spécifier plusieurs
services sur une seule ligne de commande (valable également avec les cmdlets Get-Service,
Start-Service et Stop-Service).
Exemple : redémarrage de deux services :

d. Arrêter un service
Enfin, Stop-Service arrête le fonctionnement des services.

Vous aimerez peut-être aussi