Différence entre l'invite de commande et Powershell
Le système d'exploitation Windows est livré avec de nombreuses applications et utilitaires pour aider les utilisateurs à effectuer diverses tâches. Outre les applications, il existe des outils tels que Command Prompt (CMD) et PowerShell, qui sont souvent utilisés pour le dépannage, 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 surface, vous pouvez utiliser les deux outils et de nombreuses commandes sont exécutables sur les deux. Mais il y a de légères différences entre ces deux. En termes plus simples, PowerShell est le grand frère de CMD et peut être utilisé pour exécuter la plupart des commandes CMD, et plus encore.
Commençons.
1. Qu'est-ce que l'invite de commande (CMD)
Windows 95 et 98 sont livrés avec Command.com, également connu sous le nom de MS-DOS. Les utilisateurs peuvent interagir directement avec le système d'exploitation à l'aide de commandes textuelles. Microsoft a ensuite lancé 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 et pour interagir avec le système de fichiers (commandes DIR) , et même le dépannage d'erreurs liées au système qui sont difficiles à résoudre autrement.
2. QU'EST-CE QUE POWERSHELL
PowerShell a été publié pour la première fois en 2006 pour Windows XP SP2. PowerShell 2.0 avec Windows 7 apportait de nombreuses fonctionnalités et était compatible avec de nombreuses commandes CMD. Windows 10 est l'outil de ligne de commande par défaut. La raison pour laquelle PowerShell a décollé était sa capacité à travailler avec le langage de programmation C # qui s'intègre également au .NET Framework.
Cela permettait aux utilisateurs d'écrire des scripts personnalisés pouvant être utilisés pour exécuter une série de commandes à distance. Vous pouvez également l'utiliser pour automatiser certaines tâches administratives, ce qui vous donne plus de flexibilité que l'humble CMD. C'est un environnement de script qui fait plus qu'un wrapper. De plus, il a un arrière-plan bleu au lieu de noir pour une raison.
3. La 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 de 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 ce est?
C'est là qu'interviennent les applets de commande. Il s'agit d'un ensemble de commandes que les utilisateurs peuvent exécuter avec une seule commande. Cet ensemble de commandes est appelé scripts. Dans CMD, vous devez attendre que la commande précédente soit complètement exécutée avant de donner la commande suivante. PowerShell fait gagner du temps et permet ainsi l'automatisation avec des scripts.
Alors que CMD ne fonctionne qu'avec du texte, PowerShell a pris une feuille de lignes de commande Linux et peut également fonctionner avec des canaux. La canalisation permet à 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 du réseau, en exécutant des applets de commande dans un ordre spécifique.
Ne vous méprenez pas, bien que PowerShell soit puissant, il n'est pas à la hauteur de la puissance de certains des outils de ligne de commande pris en charge dans les distributions Linux.
4. Quand utiliser
CMD est largement utilisé pour naviguer, gérer et interagir avec la structure des fichiers et dossiers système, 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 Service and Management) pour vérifier et réparer l'intégrité des fichiers système.
Les administrateurs système préfèrent PowerShell pour gérer les données, en particulier sur un réseau d'ordinateurs. De plus, puisque vous exécutez toutes les commandes CMD dans PowerShell, cela donne un avantage sur l'invite de commande. Vous pouvez également exécuter des cmdlets qui sont des groupes de commandes (scripts) pour effectuer des fonctions administratives.
La possibilité de cliquer sur le référentiel de code .NET Framework plus ouvre des possibilités aux utilisateurs de PowerShell. Vous pouvez obtenir des informations sur les processus en cours d'exécution (applet de commande get-process), les connexions réseau, l'exécution de tâches administratives liées à la base de données et même les algorithmes de chiffrement. Plus adapté aux programmeurs et aux administrateurs.
Vient ensuite la logique conditionnelle où vous pouvez programmer 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 pourrait être une applet de commande qui fermera toutes les applications d'arrière-plan si la RAM est pleine ou viole un certain niveau en termes d'utilisation. Classe, 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 applet de commande ? Ne vous inquiétez pas, PowerShell a une grande communauté de passionnés qui ont partagé leurs propres applets de commande que vous pouvez utiliser.
déplacer le pouvoir
Microsoft TechNet propose une grande collection de guides, d'exemples et de liens vers des référentiels de code (tels que GitHub). Un excellent endroit pour commencer votre voyage. Récemment, une nouvelle application Windows Terminal pour Windows 10 a été publiée, ce qui a dérouté de nombreux utilisateurs. Cependant, Microsoft a clairement indiqué que CMD est là. Il est logique de voir combien d'utilisateurs utilisent encore CMD comme outil de ligne de commande par défaut.