PowerShell est bien plus puissant que la plupart des utilisateurs de Windows ne le pensent

/fr/images/windows-11-pc-running-dietpi-script-powershell.jpg

Windows essaie d’être simple et décontracté. Son interface graphique offre tout ce dont vous avez besoin pour contrôler et gérer un système d’exploitation, du moins pour un utilisateur basique. Vous aurez rarement besoin de sauter dans une fenêtre de terminal et d’exécuter une commande ou un script. Avant que Windows Terminal n’existe, CMD et PowerShell étaient des environnements de ligne de commande distincts, et Windows Terminal peut désormais les héberger tous les deux dans des onglets. Microsoft présente PowerShell comme un shell de ligne de commande et un langage de script, et offre des fonctionnalités plus larges que celles de l’invite de commande dans de nombreux scénarios de script.

Vous ne réalisez peut-être même pas la véritable puissance de cet outil sombre. Il peut vous aider à automatiser des tâches, à gérer des éléments du système, à créer des scripts personnalisés et à gérer d’autres systèmes Windows à distance dans des environnements pris en charge.

PowerShell est votre ami CLI

Simple mais puissant

/fr/images/windows-powershell-vs-powershell.jpg

Pour un utilisateur basique, une interface de terminal n’est qu’un endroit où il tape des commandes. Cela semble bien plus compliqué que de cliquer sur un bouton ou de naviguer dans les menus, et c’est pourquoi de nombreux utilisateurs de Windows tentent de l’éviter. Mais PowerShell peut effectuer de nombreuses tâches administratives et automatiser des actions qui ne sont pas exposées via les applications système standard.

Mais comment PowerShell est-il capable de faire cela ? C’est parce que PowerShell est à la fois une CLI et un langage de script. L’essentiel est que vous ayez accès à des applets de commande utiles (des commandes courtes et puissantes pour contrôler les éléments du système tels que les processus ou les fichiers). PowerShell peut manipuler des objets.NET à l’aide de ces applets de commande, ce qui signifie qu’il peut accéder aux informations associées à un élément particulier du système d’exploitation. Ensuite, vous pouvez l’utiliser pour transmettre des informations d’une applet de commande à une autre sur une seule ligne et créer un ensemble impressionnant de scripts personnalisés.

PowerShell fonctionne avec des objets structurés et des API système, ce qui facilite la création de scripts et l’automatisation de nombreuses tâches administratives. Étant donné que PowerShell utilise un format verbe-nom, les applets de commande sont plus faciles à comprendre et à apprendre car elles ressemblent au texte et aux mots que vous utilisez habituellement. Il comprend les données structurées et prend en charge la logique et les conditions, vous donnant ainsi un avantage.

Un exemple simple est l’applet de commande Get-Process, qui renvoie des objets de processus pour les processus en cours d’exécution sur votre système.

Ensuite, vous pouvez lui demander de répertorier les processus en cours d’exécution par ordre décroissant en redirigeant les données de la première applet de commande vers Sort-Object :


Get-Process | Sort-Object WorkingSet -Descending

Notez à quoi la syntaxe de la commande ressemble à une phrase de base dans laquelle chaque mot décrit la chose qu’il affectera, appellera ou fera. Je peux modifier davantage la commande pour arrêter les trois principaux processus en fonction de l’utilisation de la mémoire.


Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 3 | Stop-Process -Force

Mais ne pouvez-vous pas faire la même chose dans l’invite de commande ? Oui, vous pouvez, mais il existe plusieurs limitations. Vous devez comprendre qu’il s’agit d’un outil hérité qui peut exécuter des commandes et générer du texte brut. Mais il ne peut pas traiter les données structurées comme PowerShell, ce qui limite l’adéquation de CMD aux scénarios de script Windows modernes.

Je peux lister tous les processus dans CMD à l’aide de la commande tasklist, mais organiser les résultats par ordre décroissant est un peu complexe. Je dois utiliser tasklist/NH | trier/R/+65.

Ici, je lui dis d’abord d’ignorer les en-têtes de colonnes avec /NH, puis de diriger les résultats vers une commande de tri qui trie le texte en ordre décroissant à partir de la position du 65ème caractère. C’est plus une astuce pour manipuler du texte que pour accéder à des données structurées, et c’est difficile à comprendre car il ne suit pas une structure verbe-nom. Ainsi, la création de scripts devient fastidieuse et complexe.

/fr/images/windows-powershell-vs-powershell.jpg

Connexes

5 raisons pour lesquelles vous devriez utiliser PowerShell même si vous n’utilisez pas Windows

PowerShell peut être utilisé de multiples manières en dehors de Windows.

Automatisation et scripts

Contrôle du système granulaire

Exécuter des scripts PowerShell pour réparer quelque chose sur mon PC ou effectuer une tâche nécessitant une intervention manuelle est désormais mon passe-temps. Il existe plusieurs scripts essentiels que je préfère utiliser, et leur automatisation via le Planificateur de tâches me fait gagner beaucoup de temps. Le seul obstacle est l’écriture du script, mais plusieurs scripts utiles sont déjà disponibles sur les forums et autres plateformes.

Abonnez-vous à la newsletter pour obtenir des conseils pratiques sur PowerShell

Bénéficiez d’une couverture PowerShell ciblée dans les scripts organisés par la newsletter, des explications sur les applets de commande en langage simple et des exemples pratiques d’automatisation que vous pouvez appliquer aux tâches de gestion Windows. Matériel PowerShell clair et exploitable rassemblé pour les abonnés.

Obtenir des mises à jour

En vous abonnant, vous acceptez de recevoir des newsletters et des e-mails marketing, et acceptez nos conditions d’utilisation et notre politique de confidentialité. Vous pouvez vous désinscrire à tout moment.

Un bon exemple consiste à rechercher tous les fichiers d’un répertoire particulier qui dépassent une certaine taille (disons 5 Go). Si vous souhaitez le faire à l’aide de l’Explorateur de fichiers, l’expérience est lente et vous ne pouvez pas l’automatiser au-delà de la recherche. PowerShell ou un outil tiers est généralement la meilleure option si vous souhaitez une automatisation fiable pour ce type de tâche de fichiers.

Je peux créer un script personnalisé qui élimine tous les fichiers au-dessus d’une taille spécifiée et effectue même des opérations (déplacement, suppression, etc.) sur eux. Ensuite, je peux utiliser le Planificateur de tâches pour automatiser ce script personnalisé, qui s’exécute à l’intervalle de temps spécifié. Ainsi, mon flux de travail ne nécessite désormais plus mon intervention manuelle pour des actions aussi triviales. Le Planificateur de tâches exécutera le script en arrière-plan à l’heure ou à l’intervalle que je spécifie.

Ce n’est que l’un des nombreux scripts PowerShell qui vous facilitent la vie. Mon interaction avec les outils GUI devient presque négligeable avec cette approche.

N’ignorez pas PowerShell

Windows 11 nécessite beaucoup de réglages et l’exécution de scripts PowerShell personnalisés peut vous aider à apporter les modifications plus rapidement. Il existe d’autres fonctionnalités PowerShell, telles que la gestion à distance et le dépannage basé sur les journaux, qui sont plus souvent utilisées dans les environnements d’entreprise, mais je les utilise principalement à des fins d’automatisation et pour exercer un meilleur contrôle du système. Il y a une courbe d’apprentissage pour créer des scripts personnalisés, mais vous serez heureux une fois que vous l’aurez maîtrisé.

*️⃣ Lien source :

5 raisons pour lesquelles vous devriez utiliser PowerShell même si vous n’utilisez pas Windows , Exécution de scripts PowerShell, , , , , Conditions d’utilisation , Politique de confidentialité , utilisez le Planificateur de tâches pour automatiser ce script personnalisé,