GT explique: différence entre l'invite de commande et Powershell
Divers / / November 29, 2021
Le système d'exploitation Windows est livré avec plusieurs applications et outils utilitaires pour aider les utilisateurs à effectuer différentes tâches. Outre les applications, il existe des outils tels que Invite de commandes (CMD) et PowerShell, qui sont souvent utilisés pour le dépannage des erreurs, l'exécution de commandes par lots et la maintenance du système. Mais quelle est la différence entre l'invite de commande et PowerShell?
En apparence, vous pouvez utiliser les deux outils et de nombreuses commandes sont exécutables sur les deux. Mais il existe des différences subtiles entre ces deux. En termes plus simples, PowerShell est le frère aîné de CMD et peut être utilisé pour exécuter la plupart des commandes CMD, puis d'autres.
Commençons.
1. Qu'est-ce que l'invite de commande (CMD)
Windows 95 et 98 étaient fournis avec Command.com, également connu sous le nom de MS-DOS. Les utilisateurs pouvaient interagir directement avec le système d'exploitation à l'aide de commandes textuelles. Microsoft a ensuite publié CMD (Command Prompt) avec Windows NT qui était meilleur que les itérations précédentes.
CMD est principalement utilisé pour exécuter des commandes par lots, interagir avec le système de fichiers (commandes DIR), et même résoudre les erreurs liées au système qui sont autrement difficiles à résoudre.
2. Qu'est-ce que PowerShell
PowerShell a été publié pour la première fois en 2006 pour Windows XP SP2. Le PowerShell 2.0 amélioré avec Windows 7 a apporté encore plus de fonctionnalités et était rétrocompatible avec de nombreuses commandes CMD. Windows 10 l'a comme outil de ligne de commande par défaut. La raison pour laquelle PowerShell a décollé était sa capacité à fonctionner avec le langage de programmation C# qui s'intègre également à .NET Framework.
Cela a permis aux utilisateurs d'écrire des scripts personnalisés qui peuvent être utilisés pour exécuter une série de commandes à distance. Vous pouvez également l'utiliser pour automatiser certaines tâches administratives, offrant plus de flexibilité qu'un humble CMD. C'est un environnement de script qui agit comme plus qu'un simple shell. De plus, il a un fond bleu au lieu de noir pour certaines raisons.
3. Différence entre CMD et PowerShell
CMD est principalement utilisé par les administrateurs système pour traiter les fichiers batch, résoudre certaines erreurs courantes et réparer les fichiers système corrompus.
PowerShell fait passer les choses au niveau supérieur en permettant aux administrateurs de contrôler un réseau entier et tous les systèmes sur ce réseau. Contrairement à CMD qui ne peut interpréter et exécuter que des commandes Batch, PowerShell peut également interpréter et exécuter des commandes Batch et PowerShell. Qu'est-ce que c'est?
C'est là qu'interviennent les « applets de commande ». Il s'agit d'un groupe de commandes que les utilisateurs peuvent exécuter avec une seule commande. Ce groupe de commandes est appelé scripts. Dans CMD, il faut attendre que la commande précédente soit complètement exécutée avant de donner la suivante. PowerShell fait gagner du temps et permet l'automatisation à l'aide de scripts de cette façon.
Alors que CMD ne peut fonctionner qu'avec du texte, PowerShell s'est inspiré des lignes de commande Linux et peut également fonctionner avec des tuyaux. Les canaux permettent à une applet de commande de partager même des données complexes (sortie) avec une autre applet de commande (entrée). Cela permet aux administrateurs de manipuler et de transférer des données entre différents programmes et même des ordinateurs dans un réseau, en exécutant des applets de commande dans une séquence définie.
Ne vous y trompez pas, bien que PowerShell soit puissant, il n'est nulle part aussi puissant que certains outils de ligne de commande pris en charge dans les distributions Linux.
4. Quand utiliser
Le CMD est largement utilisé pour naviguer dans la structure des fichiers et dossiers du système, les gérer et interagir avec eux, modifier les propriétés et résoudre les erreurs Windows. Chez GT, nous demandons souvent à nos lecteurs d'exécuter des commandes telles que SFC (System File Checker) et DISM (Deployment Image Servicing and Management) pour vérifier l'intégrité des fichiers système et les réparer.
Les administrateurs système préfèrent PowerShell pour gérer les données, en particulier sur un réseau d'ordinateurs. De plus, comme vous exécutez à peu près toutes les commandes de CMD dans PowerShell, cela donne un avantage sur l'invite de commande. En outre, vous pouvez exécuter des applets de commande qui sont des ensembles de commandes (scripts) pour exécuter des fonctions administratives.
La possibilité d'exploiter le référentiel de code du .NET Framework ouvre davantage de possibilités aux utilisateurs de PowerShell. Vous pouvez extraire des informations sur les processus en cours (cmdlet get-process), la communication réseau, effectuer des tâches administratives liées à la base de données et même des algorithmes cryptographiques. Plus approprié pour les programmeurs et les administrateurs.
Vient ensuite la logique conditionnelle où vous pouvez planifier des tâches à exécuter en fonction de l'occurrence d'un événement, par exemple. D'autres exemples de logique conditionnelle incluent des paramètres tels que if, else, for, when et switch. Un exemple simple peut être une applet de commande qui fermera toutes les applications en arrière-plan si La RAM est pleine ou dépasse un certain niveau en termes d'utilisation. Bien, hein ?
Bien qu'il s'agisse d'exemples simples, les administrateurs réseau utilisent PowerShell pour de nombreuses tâches complexes. Vous ne savez pas comment créer votre première cmdlet? Ne vous inquiétez pas, car PowerShell bénéficie d'une grande communauté de passionnés qui ont partagé leurs applets de commande que vous pouvez utiliser.
Mouvement de puissance
Microsoft TechNet a une grande collection de guides, d'exemples et de liens vers des référentiels de code (comme GitHub). Un excellent endroit pour commencer votre voyage. Récemment, le nouveau Application Terminal Windows pour Windows 10 a été publié qui a dérouté de nombreux utilisateurs. Cependant, Microsoft a a été clair que CMD est là, reste. Cela a beaucoup de sens de voir combien d'utilisateurs utilisent encore CMD comme outil de ligne de commande par défaut.
Ensuite : Vous cherchez des trucs et astuces CMD? Cliquez sur le lien ci-dessous pour trouver une liste organisée de 11 commandes CMD intéressantes.