Passer au contenu principal

Les 12 principales raisons pour lesquelles vous devriez remplacer CMD.EXE

Le processeur de commandes Windows par défaut est CMD.EXE. Il s'agit d'une application console qui exécute les commandes que vous entrez à l'invite et exécute des fichiers batch simples (fichiers avec une extension .BAT ou .CMD). Malheureusement, le shell CMD a toujours manqué cruellement des fonctionnalités les plus élémentaires par rapport aux processeurs de commandes disponibles dans d'autres systèmes d'exploitation. Et CMD n’a pas beaucoup changé depuis sa première apparition dans Windows NT 3.1 (sorti en 1993).

Quel est le problème avec CMD ?

12. CMD n'a (presque) aucune option de configuration. Il existe une poignée de commutateurs que vous pouvez spécifier sur la ligne de démarrage, et c'est tout.

11. CMD n’a pas d’extensibilité. Il n'y a aucun moyen de créer des plugins pour étendre CMD ; votre seul choix est d'écrire de nouvelles applications externes.

10. CMD dans Windows 8 dispose de 36 commandes internes. C’est seulement quelques-uns de plus que ce que CMD avait dans Windows NT 3.1 il y a 20 ans. (Apparemment, CMD ne figure pas en tête de la liste des mises à jour de Microsoft !)

9. CMD peut définir ses couleurs de premier plan et d’arrière-plan, et… rien d’autre. Pas de couleurs différentes pour l'entrée et la sortie, les répertoires colorisés ou ANSI x3.64.

8. La complétion du nom de fichier est grossière et non programmable.

7. L'édition en ligne de commande dans CMD est (extrêmement) simpliste.

6. L'affichage des fichiers est limité au TYPE. Si vous souhaitez afficher une page à la fois, dirigez-vous vers PLUS. Vous souhaitez revenir en arrière, effectuer une recherche, faire défiler de haut en bas ? Vous ne pouvez pas.

5. Les variables dans CMD comprennent les variables d'environnement et un total de 6 variables internes. Tous ces paramètres CMD et Windows internes que vous souhaitez interroger ? Pas de CMD.

4. Alias ​​? Sorte de. N’essayez rien d’autre que l’alias de commande le plus basique.

3. Plus de 20 ans après le début de l’ère Internet, les commandes Internet de CMD ne contiennent… rien. Aucun accès aux fichiers HTTP ou FTP dans aucune commande interne. Pas de SSL ou SSH, et pas de SMTP.

2. L'aide est presque inexistante. Un ou deux paragraphes de texte s'affichent lorsque vous entrez le nom de la commande suivi d'un /?. Vous voulez voir la syntaxe des commandes pendant que vous construisez une ligne de commande ou écrivez un fichier batch ? Aide sur la redirection, l'analyse de la ligne de commande, la création de fichiers batch ? Oublie ça.

1. La création, l'édition et le débogage de fichiers batch sont une tâche exigeante et nécessitent une solution intégrée. Quelle est la solution de Microsoft ? Modifiez le fichier batch dans le Bloc-notes, exécutez-le sur la ligne de commande et voyez ce qui se passe.

Microsoft semble maintenant déployer ses efforts dans PowerShell. PowerShell est certainement une solution puissante (à condition que vous soyez un programmeur .NET !), mais elle ne résout peut-être que quatre ou cinq des problèmes ci-dessus. Il se concentre sur la partie langage de script et fait peu pour l'utilisation interactive de la ligne de commande. (Etes-vous censé utiliser Explorer pour cela ?)

D'autres solutions ? Eh bien, il existe une poignée de shells Linux qui ont été portés sur Windows. Si vous êtes un utilisateur Linux qui utilise occasionnellement Windows, c'est une bonne solution et ne vous obligera pas à apprendre une nouvelle syntaxe.

Ou vous pouvez rassembler quelques centaines d'utilitaires de ligne de commande (avec une syntaxe et des niveaux de prise en charge très variables) pour fournir les fonctionnalités qui manquent à CMD. Mais vous êtes toujours coincé avec cette horrible ligne de commande interactive.

Ou essayez de trouver un remplaçant CMD. Je n’en connais que deux, tous deux de JP Software. (Si quelqu'un en connaît d'autres, merci de me le faire savoir.) TCC fait tout ce qui est dans la liste ci-dessus et ajoute quelques milliers de fonctionnalités supplémentaires. Le T gratuitCC/LE La version ne prend pas en charge Internet et l'IDE de fichiers batch, et possède environ la moitié de la TCC commandes et variables (ce qui signifie qu'il contient toujours 4 fois plus de commandes et 20 fois plus de variables que CMD).