Mettez votre activité MSP sur orbite ! Roadshow 2024 Lyon | Nantes | Paris

Tout savoir sur les commandes PowerShell : concept et liste des 30 indispensables

19 septembre 2024 | Technique

Qu’est-ce que la commande PowerShell ?

La commande PowerShell est un framework de gestion de configuration et d’automatisation des tâches développé par Microsoft. Il combine un langage de script et une interface en ligne de commande, permettant aux administrateurs système et aux utilisateurs avancés d’automatiser des tâches répétitives et de gérer divers aspects des systèmes informatiques.

Si vous êtes un prestataire informatique à la recherche d’une solution Cmdlets adaptée à la gestion de parc informatique, vous pourriez être intéressé par la proposition de BeMSP.fr : Datto RMM.

Pourquoi utiliser la commande PowerShell ?

Utiliser la commande PowerShell simplifie considérablement la gestion des systèmes Windows et d’autres environnements supportés. 

Grâce à sa puissance et à sa flexibilité, il est possible d’effectuer des tâches complexes en quelques lignes de code. En automatisant les processus, vous pouvez gagner du temps et réduire les erreurs humaines. 

Ainsi les informaticiens n’ont plus à faire des opérations manuelles poste par poste. Avec la technologie RMM (gestion et surveillance à distance), ils peuvent lancer des tâches sur tout le parc informatique d’un client. La solution Datto RMM proposée par BeMSP permet de créer des scripts pour automatiser des invits de commande, que ce soit avec une commande CMD ou Powershell.

Les différentes types de commandes PowerShell

Commandes Cmdlets

Les cmdlets (prononcées « command-lets ») sont des commandes intégrées qui effectuent des actions spécifiques dans PowerShell. Elles sont conçues pour être simples et efficaces, souvent utilisées pour des tâches courantes comme la gestion des fichiers ou des processus.

Scripts PowerShell

Les scripts PowerShell sont des fichiers contenant une série de cmdlets et d’autres instructions PowerShell. Ils permettent de créer des automatisations complexes en combinant plusieurs commandes en un seul fichier exécutable. Suivez notre tuto pour créer des raccourcis sur le bureau avec des scripts.

Fonctions

Les fonctions dans PowerShell sont des blocs de code réutilisables qui effectuent des tâches spécifiques. Elles peuvent être utilisées pour encapsuler des cmdlets et des scripts afin de simplifier le code et améliorer la lisibilité.

Syntaxe des Commandes PowerShell

Structure de base d’une Cmdlet

La syntaxe de base d’une cmdlet est : Verbe-Nom, par exemple, Get-Process ou Set-Location. Cette structure facilite la compréhension et l’utilisation des cmdlets en fournissant une nomenclature cohérente.

Paramètres et arguments

Les cmdlets acceptent des paramètres qui modifient leur comportement. Par exemple, Get-Process -Name « notepad » utilise le paramètre -Name pour filtrer les processus par nom. Les arguments sont les valeurs que vous passez à ces paramètres.

Pipes et chaînage de commandes

Le caractère |, appelé pipe, permet de passer la sortie d’une cmdlet comme entrée d’une autre. Cela facilite la création de chaînes de commandes complexes et la manipulation des données. Par exemple : Get-Process | Sort-Object CPU trie les processus en fonction de leur utilisation du CPU.

Les 30 commandes PowerShell indispensables

1. Get-Command

Cette cmdlet affiche une liste de toutes les commandes disponibles dans PowerShell. C’est utile pour découvrir de nouveaux cmdlets ou pour vérifier la syntaxe des commandes.

2. Get-Help

Utilisez Get-Help pour obtenir des informations détaillées sur une cmdlet ou un concept PowerShell. Par exemple, Get-Help Get-Process fournit des détails sur la cmdlet Get-Process.

3. Get-Process

Cette cmdlet affiche une liste des processus en cours d’exécution sur l’ordinateur. Vous pouvez utiliser des paramètres pour filtrer et trier les résultats.

4. Start-Process

Utilisée pour démarrer un nouveau processus ou application. Par exemple, Start-Process notepad lance le Bloc-notes.

5. Stop-Process

Permet d’arrêter un processus en cours d’exécution. Vous pouvez utiliser des ID de processus ou des noms pour spécifier quel processus arrêter.

6. Get-Service

Affiche une liste des services Windows et leur état (en cours d’exécution ou arrêté). Pratique pour la gestion des services système.

7. Start-Service

Démarre un service Windows spécifié. Par exemple, Start-Service -Name wuauserv lance le service de mise à jour Windows.

8. Stop-Service

Arrête un service Windows en cours d’exécution. Utilisez-le pour arrêter des services non nécessaires ou en conflit.

9. Restart-Service

Redémarre un service, utile pour appliquer les modifications ou résoudre les problèmes liés aux services.

10. Get-EventLog

Récupère les entrées des journaux d’événements Windows. Vous pouvez filtrer les résultats par type de journal et par période.

11. Clear-EventLog

Efface les entrées d’un journal d’événements. Utilisé pour maintenir la taille des journaux et nettoyer les données obsolètes.

12. Get-ChildItem

Affiche les fichiers et dossiers dans un répertoire. Pratique pour explorer et gérer les systèmes de fichiers.

13. Set-Location

Change le répertoire de travail actuel. Vous pouvez l’utiliser pour naviguer dans le système de fichiers via PowerShell.

14. New-Item

Crée un nouvel élément, tel qu’un fichier ou un dossier, dans un répertoire spécifié. Par exemple, New-Item -Path « C:\temp » -ItemType Directory crée un nouveau dossier.

15. Remove-Item

Supprime un élément spécifié, comme un fichier ou un dossier. Faites attention à ne pas supprimer des éléments importants par erreur.

16. Copy-Item

Copie un fichier ou un dossier d’un emplacement à un autre. Par exemple, Copy-Item -Path « C:\source.txt » -Destination « C:\destination.txt ».

17. Move-Item

Déplace un fichier ou un dossier vers un nouvel emplacement. Utilisé pour organiser les fichiers et les dossiers.

18. Rename-Item

Renomme un fichier ou un dossier. Par exemple, Rename-Item -Path « C:\oldname.txt » -NewName « newname.txt ».

19. Get-Content

Affiche le contenu d’un fichier. Utilisé pour lire le texte d’un fichier directement dans la console PowerShell.

20. Set-Content

Écrit ou remplace le contenu d’un fichier. Par exemple, Set-Content -Path « C:\file.txt » -Value « New content ».

21. Add-Content

Ajoute du texte à la fin d’un fichier sans remplacer le contenu existant. Utile pour la journalisation ou l’ajout de données.

22. Get-Variable

Récupère les variables définies dans la session PowerShell. Utilisé pour examiner et gérer les variables en cours d’utilisation.

23. Set-Variable

Définit ou modifie une variable dans PowerShell. Par exemple, Set-Variable -Name « MyVar » -Value « 123 ».

24. Remove-Variable

Supprime une variable de la session PowerShell. Utilisé pour nettoyer les variables non nécessaires.

25. Get-ExecutionPolicy

Affiche la politique d’exécution actuelle de PowerShell, déterminant la capacité de PowerShell à exécuter des scripts.

26. Set-ExecutionPolicy

Modifie la politique d’exécution de PowerShell. Par exemple, Set-ExecutionPolicy RemoteSigned permet d’exécuter des scripts signés.

27. Invoke-Command

Exécute une commande ou un script sur des ordinateurs distants. Utilisé pour gérer des systèmes à distance.

28. Enter-PSSession

Ouvre une session PowerShell interactive sur un ordinateur distant. Permet une gestion interactive des systèmes distants.

29. Exit-PSSession

Ferme une session PowerShell interactive distante ouverte avec Enter-PSSession.

30. Get-PSDrive

Affiche les lecteurs de stockage disponibles dans PowerShell, y compris les lecteurs de fichiers et les lecteurs de registre.

Conclusion

La commande PowerShell est un outil puissant pour les administrateurs système et les utilisateurs avancés, offrant une grande flexibilité et une riche fonctionnalité pour l’automatisation et la gestion des systèmes.

En comprenant les types de commandes disponibles et en maîtrisant la syntaxe, vous pouvez tirer parti de cet outil pour simplifier vos tâches informatiques quotidiennes.

Reprenez le contrôle de votre gestion informatique : réservez votre démo.

FAQ

Qu’est-ce qu’une cmdlet dans PowerShell ?

Une cmdlet est une commande intégrée dans PowerShell qui effectue une tâche spécifique. Elles suivent une syntaxe Verbe-Nom et sont conçues pour être simples et efficaces.

Comment puis-je obtenir de l’aide sur une cmdlet spécifique ?

Utilisez la cmdlet Get-Help suivie du nom de la cmdlet. Par exemple, Get-Help Get-Process vous fournira des détails sur la cmdlet Get-Process.

Qu’est-ce qu’un script PowerShell ?

Un script PowerShell est un fichier contenant une série de cmdlets et d’instructions PowerShell. Il permet d’automatiser des tâches complexes en combinant plusieurs commandes.

Comment puis-je exécuter un script PowerShell ?

Vous pouvez exécuter un script en utilisant la cmdlet Invoke-Command ou en lançant le fichier script directement à partir de la ligne de commande PowerShell.

Quels sont les risques associés à la modification de la politique d’exécution dans PowerShell ?

Modifier la politique d’exécution peut affecter la sécurité en permettant l’exécution de scripts non signés. Assurez-vous de comprendre les implications avant de changer cette politique.

Articles sur le même sujet :