Commande pour voir toutes les commandes Windows

1

Lorsque je tape helpen ligne de commande Windows, il répertorie de nombreuses commandes. Cependant, j’aperçois qu’il existe toute une série de commandes qui ne figurent pas dans cette liste, par exemple de nombreuses commandes de mise en réseau telles que ping, tracert, arp, netstat, netetc.

Voici donc ma question. Pourquoi ces commandes supplémentaires ne sont-elles pas affichées help? Existe-t-il un sous-ensemble / groupe de commandes uniquement help? Existe-t-il une commande / méthode répertoriant toutes les commandes pouvant être exécutées dans Windows? (Je ne parle pas de fichiers .ex supplémentaires qui sont ajoutés au chemin quand un nouveau logiciel est installé.)

open_sourse
la source
quelle version de windows?
EBGreen
Eh bien, sans connaître votre système d'exploitation, cela peut ne pas s'appliquer. De toute façon, ce n'est pas une réponse directe à votre question. Si vous ouvrez une invite Powershell et tapez Get-Command, toutes les commandes disponibles seront répertoriées. Commandes intégrées (applets de commande), alias, exes, etc.
EBGreen

Réponses:

1

Les commandes répertoriées dans l'aide sont des commandes qui se trouvent dans le shell d'invite de commande lui-même. Les autres programmes tels que ping, tracert, etc. sont des applications situées dans les répertoires de fichiers système. Vous pouvez exécuter dir dans le répertoire% systemroot% si vous souhaitez voir toutes les applications. Remarque: toutes les applications ne s'exécutent pas dans le shell d'invite de commande ou peuvent ne pas avoir d'interface de ligne de commande.

David
la source
1

Ils ne sont pas représentés helpcar ils ne sont définis à aucun endroit.

Les commandes présentées dans helpsont appelées "commandes intégrées" (c'est-à-dire "commandes intégrées"). Ils sont fournis par le shell ( cmd.exe) et ne sont que des fonctions internes. Tout le reste est un programme externe qui est exécuté et exécuté avec les arguments fournis.

Ces programmes peuvent être n'importe où dans votre %PATH%. %PATH%est une variable système qui contient une liste de chemins pour rechercher des programmes pouvant être exécutés. C'est fondamentalement juste une liste de dossiers.

Lorsque vous l'exécutez ping X.X.X.X, il commence à les parcourir jusqu'à ce qu'il trouve un dossier avec un fichier appelé ping.exeet tente de l'exécuter avec X.X.X.Xle premier paramètre. (Astuce, je pense ping.exeest dans C:\Windows\System32, où vivent la plupart des utilitaires que vous avez énumérés)

Pourquoi ne répertorie-t-il pas tous les programmes possibles? Parce qu'il peut y en avoir des milliers et que leur énumération peut prendre très, très longtemps (et le but de helpest de lister les éléments intégrés, afin que vous sachiez quelles commandes sont fournies par le shell et devraient être disponibles sur tout système Windows. et qui ne sont pas et pourraient être manquants ou différents sur un système Windows particulier).


Après une enquête plus approfondie, il semble y avoir quelques commandes répertoriées dans helplesquelles figurent des commandes externes (comme icacls). Je ne peux que spéculer sur la raison pour laquelle ils ont été choisis pour l'inclusion, mais la règle ci-dessus reste valable en règle générale pour les shells (que ce soit pour Windows, Linux ou OS X) et 90% + des commandes répertoriées par help.

Darth Android
la source