Cmd.exe versus PowerShell sous Windows: une référence pratique

Ligne de commande ou Powershell sous Windows? Voici un aperçu de chacun d’eux, de leurs avantages et inconvénients, ainsi que des commandes clés que vous pouvez utiliser.
Cliquer, cliquer, cliquer… toujours avec le boutonen cliquant! Si vous voulez un moyen plus rapide de faire beaucoup de choses dans Windows, vous voulez en savoir plus sur les interfaces de ligne de commande (CLI) CMD.exe et PowerShell. Mais lequel devriez-vous utiliser? Examinons-les tous les deux, leurs forces et leurs faiblesses, ainsi que des commandes clés que vous pouvez utiliser encore et encore.
CMD est également appelé Command Shell. En fait, les gens parlent le plus souvent de «commandement». C’est un outil de Windows qui permet aux utilisateurs d’effectuer des tâches en tapant des lettres et des mots. Pour les lecteurs plus expérimentés, vous pouvez vous en souvenir en tant que commandes MS-DOS. MS-DOS vient de MicroSmaintes fois réIsk Operating System. Ces commandes sont logées dans un fichier appelé command.com, caché au fond de Windows. Vous constaterez également que certaines commandes du shell de commandes appellent de petits programmes. Ouvrez l'explorateur Windows et allez à C: WindowsSystem32. Regardez toutes les applications qu'il contient. La plupart d'entre eux ont les mêmes noms que beaucoup de commandes différentes. Vous verrez tracert.exe, taskkill.exe, whoami.exe, etc.
Si vous connaissez les différentes commandes et comment les utilisereux, c’est souvent un moyen beaucoup plus rapide de faire avancer les choses. Mais fais attention! C’est également un outil puissant qui peut causer de graves problèmes dans Windows si vous faites une erreur ou si vous ne savez pas ce que vous faites.
PowerShell est un utilitaire de ligne de commande, mais égalementlangage de script complet construit sur la plate-forme .NET de Microsoft. Il a toute la puissance et les capacités de CMD, et bien plus encore. PowerShell vous permet d'interagir avec toutes les facettes de Windows et peut également interagir avec une grande variété de programmes et de serveurs Microsoft. Vous pouvez travailler avec des outils tels que Microsoft Office, Exchange Server et Microsoft SQL Server. Au-delà de cela, vous pouvez également interagir avec des bases de données non-Microsoft, telles que MySQL, IBM DB2, etc. Vous pouvez même créer vos propres programmes avec des interfaces graphiques. C’est un outil extrêmement puissant qui est maintenant également open source et qui peut être utilisé sur des ordinateurs Mac et Linux.
Ceci est fait en utilisant des applets de commande, prononcées comme“Commandlettes”. Comme le suggère la partie «lettes» du mot, les applets de commande sont de petites commandes. Dans CMD, les commandes sont des programmes autonomes, car nous vous avons montré qu’il s’agissait d’applications exécutables dans Windows. Les cmdlets ressemblent davantage à des blocs de construction. Chacun fait une chose spécifique, mais ils peuvent être assemblés pour créer une commande complète, ou un script.
Quelle est la différence entre CMD et PowerShell?
Il existe de nombreuses différences techniques entreet si vous le souhaitez, vous pouvez effectuer davantage de recherches à ce sujet. Mais il est important de savoir que PowerShell est beaucoup moins limité que CMD. Pensez à PowerShell comme à ce que CMD souhaitait être quand il aurait grandi. Si CMD est un outil multiple, PowerShell est l’ensemble du garage rempli d’outils.
Lorsque vous commencez à comparer les commandes etvous remarquerez également qu’il est plus facile de comprendre ce que peut faire une applet de commande PowerShell. Certaines des commandes sont cryptées à moins que vous ne les appreniez et les utilisiez à plusieurs reprises. Le but de commandes comme CHKDSK, RMDIR, et TRACERT n’est pas aussi évident pour la personne moyenne. Mais les applets de commande suivent la convention de nommage de verbe nom. La première partie vous indique les actions que la cmdlet va effectuer et la seconde partie vous indique les tâches qu'elle va effectuer. Par exemple, tout le monde peut dire que la cmdlet Obtenir de l'aide va vous obtenir de l'aide en quelque sorte.
Pourquoi utiliser CMD au lieu de PowerShell?
C’est une question de choix personnel. En fait, les commandes CMD peuvent être exécutées à partir de l’environnement PowerShell, ce qui entraîne beaucoup de chevauchements. Parfois, vous voudrez peut-être simplement faire quelque chose de très simple, comme basculer dans CMD et vérifier l'adresse IP de votre ordinateur, ou supprimer de force un fichier. Mais si vous souhaitez que cela soit répété, il est préférable d'écrire un script PowerShell. Rappelez-vous la règle de l'automatisation. Si vous devez faire plus de deux fois, automatisez-le.
Comment accéder à CMD et à Powershell?
Le moyen le plus simple est de cliquer dans la barre de recherche sur votre menu Démarrer et de commencer à taper cmd pour le shell de commande ou powershell pour PowerShell. Voici à quoi ça ressemble cmd.

Pour le shell de commande, vous le verrez répertorié commeApplication d'invite de commande sous Windows 10. Les versions antérieures de Windows l'indiquent sous le nom de cmd.exe. En l'ouvrant, vous obtiendrez une fenêtre noire contenant du texte blanc, comme dans l'image ci-dessous. Voir la ligne C: UtilisateursBrian> La flèche est appelée l'invite de commande. Vous obtiendrez souvent des instructions pour l’utilisation de CMD: "Tapez ceci à l’invite de commande ...".

Vous remarquerez peut-être quelques choix pour PowerShell. L'une est simplement l'application Windows PowerShell et l'autre est l'environnement de script intégré Windows PowerShell (ISE).

Si vous exécutez une seule commande ou trois,alors l'application PowerShell est suffisante. Juste pour vous impressionner, vous pouvez utiliser les commandes CMD dans PowerShell, mais vous ne pouvez pas utiliser PowerShell dans CMD. L'application PowerShell ressemble à ceci à l'ouverture:

Commandes les plus courantes dans CMD.exe
Utilisez ces commandes à l'invite de commande, appuyez sur Entrée pour les utiliser.
AIDEZ-MOI- listera les commandes communes
CD - Affiche le nom ou modifie le répertoire en cours.
CHDIR - Affiche le nom ou modifie le répertoire en cours.
CHKDSK - Vérifie un disque et affiche un rapport d'état.
CLS - Efface l'écran. Pratique après avoir exécuté un tas de commandes.
COPIE - Copie un ou plusieurs fichiers vers un autre emplacement.
DEL - Supprime un ou plusieurs fichiers.
DIR - Affiche une liste de fichiers et de sous-répertoires dans un répertoire.
DISKPART - Affiche ou configure les propriétés de la partition de disque.
SORTIE - Quitte le programme CMD.EXE (interpréteur de commandes) .MKDIR Crée un répertoire.
PLUS - Affiche la sortie un écran à la fois. Utile lorsqu'une commande renvoie beaucoup d'informations et qu'elle continue à défiler.
BOUGE TOI - Déplace un ou plusieurs fichiers d’un répertoire à un autre.
RENOMMER - Renomme un fichier ou des fichiers.
RMDIR - Supprime un répertoire.
INFORMATION SYSTÈME - Affiche les propriétés et la configuration spécifiques à la machine.
LISTE DE TÂCHES - Affiche toutes les tâches en cours d'exécution, y compris les services.
TASKKILL - Tuer ou arrêter un processus ou une application en cours d'exécution.
Cmdlets les plus courants dans PowerShell
Obtenir de l'aide - Affiche votre aide pour la cmdlet avec laquelle vous travaillez. ex: Get-Help Get-Membre vous explique comment utiliser la cmdlet Get-Member.
Get-membre - vous montre le contenu d’un élément, comme un répertoire ou un tableau.
Get-Process - Vous montre tous les processus en cours d'exécution sur votre ordinateur.
Get-Service - Vous montre tous les services sur votre ordinateur et leur état actuel.
Obtenir l'article - Vous montre des informations sur une chose spécifique. ex: Get-Item C: Utilisateurs vous montrera des informations sur le répertoire Utilisateurs, telles que les autorisations qu'il contient et la date de sa dernière modification.
Get-ChildItem - vous montre toutes les choses à l'intérieur d'une chose: ex: Get-ChildItem C: Utilisateurs vous montrera tous les fichiers et dossiers immédiatement à l'intérieur du répertoire Utilisateurs.
Cela peut sembler peu, mais si vous modifiez le verbe sur ces applets de commande, vous aurez tout un tas d’applications de commande à utiliser. Changement Obtenir à Nouveau sur Obtenir l'article et vous pouvez créer un nouvel élément. Maintenant changez le en Retirer et vous pouvez supprimer des éléments. Changement Get-Process à Stop-Process et vous pouvez mettre fin à un processus spécifique. Puis changez le en Début et vous pouvez commencer un processus. Vous avez eu l'idée.
Paramètre Bonus PowerShell
-Et qu'est-ce qui se passerait si peut être le paramètre le plus important que vous aurez jamaisutilisation. Il vous permet d'exécuter une applet de commande sans rien changer en réalité. PowerShell exécute littéralement un scénario "Et si" pour vous donner une idée de ce qui va se passer lorsque vous exécutez la cmdlet pour de vrai. Si vous avez déjà craint de causer des problèmes dans PowerShell, ajoutez toujours le paramètre -WhatIf.
Regardez la liste des fichiers dans l'image ci-dessous.

Disons que nous voulons supprimer un tas de fichiers avec la cmdlet Supprimer-élément cc_2017 *, mais nous ne savons pas exactement ce qui va se passer. Mettre le -Et qu'est-ce qui se passerait si paramètre à la fin, appuyez sur Entrée et nous le saurons!

Il nous dit que cette commande aurait supprimétous ces fichiers. Si cela vous convient, nous pouvons supprimer le -WhatIf de la cmdlet et supprimer ces fichiers. Si ce n’est pas le cas, nous pouvons modifier la cmdlet et la tester à nouveau.
CMD ou PowerShell?
Maintenant que vous en savez plus sur les deux, vous savez quepas une question non plus. Vous pouvez utiliser les deux, il est temps d'utiliser l'un ou l'autre, et parfois vous pouvez même les utiliser dans le même script! Continuez à en apprendre davantage sur chacun d’entre eux et vous aurez vraiment le contrôle total de votre propre ordinateur avant longtemps.
laissez un commentaire