Kann auf einem Computer, auf dem Windows offline (ohne Internetverbindung) ausgeführt wird, eine Liste der verfügbaren cmd-Befehle (einschließlich der Verwendung) über die Befehlszeile abgerufen / generiert werden?
windows
command-line
amiregelz
quelle
quelle
xcopy /?
Sie die Informationen zum Befehl abrufen. :)ping
,arp
,nslookup
? Es scheint, dasshelp
nur eine Liste grundlegender Windows-Befehle und keine Netzwerkbefehle generiert werden.windows\system32
Ordner, in dem ich glaube, dass es beim Auflösen von Programmen / Befehlen aussieht. Für deine Liste könntest du dort nach Exes suchen. Siehe Olivers Antwort.Eine offizielle Liste finden Sie unter Microsoft Command-Line Reference AZ . Außerdem...
Um Ihre Frage direkt zu beantworten, habe ich ein Skript entwickelt, das einfach alle
.exe
Dateien auflistet , die Sie ausführen können (weil sie sich auf Ihrem befindenPATH
). Standardmäßig werden nur diejenigen aufgelistet, in denen sich auch befindet%WINDIR%
(es sei denn, Sie führen es mit aus--all
).In einer früheren Iteration des Skripts habe ich jeden Befehl mit gestartet
/?
, was eine sehr schlechte Idee ist. Nicht jede Anwendung auf demPATH
versteht diesen Parameter. Einige werden einfach gestartet und laufen weiter, anstatt Hilfe auszudrucken. Das verschlingt also ziemlich schnell eine Menge Ressourcen.Also, da. Auf diese Weise erhalten Sie eine Liste aller verfügbaren Befehle und ihrer Parameter. Wie Sie bereits erwarten können, ist es nicht so nützlich, wie man es sich vorstellen kann.
Hier ist was wirklich wichtig ist!
Interessanter als die
.exe
Dateien auf IhremPATH
sind diecmd.exe
eingebauten. LikeIF
,FOR
undSET
. Ich habe keine vollständige Liste der eingebauten Funktionen, aber Sie können die meisten davon sehen, indem Sie Folgendes ausführencmd.exe /?
:Zu diesem Zeitpunkt verweist die Hilfe jedoch auf Befehlserweiterungen , sodass die Liste möglicherweise unvollständig ist. Sehen wir uns einige integrierte Funktionen genauer an:
ZUM /?
In der Dokumentation zum
FOR
Befehl sind alle verrückten Parameter aufgelistet, an die Sie übergeben könnenFOR
. Dies ist das Dienstprogramm, mit dem Sie alles schreiben können, was mit Schleifen zu tun hat .Diese Dokumentation enthält auch die Erklärung für die verrückte "Tilde-Notation":
WENN /?
IF
ist der Befehl zum Verzweigen . Sie benötigen diese Seite, weil sie die Vergleichsoperatoren auflistet:EINSTELLEN /?
SET
Ermöglicht die Ausführung einer Vielzahl von Operationen mit Variablen.Es ermöglicht auch die Manipulation von Strings durch die oben erwähnte "Tilde-Notation"
quelle
help
? ZB Netzwerk - Befehle wieipconfig
,nslookup
,arp
,telnet
undping
?C:\Windows\System32
. Ich nehme an, das ist amPATH
ARP.EXE
allerdings auf. Sehen Sie die Befehle, die ich beim Ausführen Ihres Skripts erwähnt habe?PATH
einen Ordner enthält, der nicht mehr existiert. Dadurch bricht das Skript ab. Vielleicht ist das das Problem? Ich arbeite an einer Lösung.PATH
: DUnter dostips.com ( CreateDosCommandIndex.bat ) ist ein Batch-Skript verfügbar, das eine HTML-Datei generiert, die die vollständige Liste der verfügbaren DOS- Befehle auf dem System zusammen mit ihrer jeweiligen Ausgabe enthält, die über "commandname /?"
Ich melde es unten, da dostips.com zu diesem Zeitpunkt Probleme mit dem Laden der Datenbank zu haben scheint und die Website zeitweise funktioniert.
quelle
Processing SC
für mich auf. Es scheint jedoch nur auf eine Eingabe zu warten. AlsoEnter
help
Befehl anzeigt (was einfacher auszuführen ist). Trotzdem, danke für die Eingabe, es ist sehr nützlich. @OliverSalzburg Da hört es auch für mich auf.Es ist nicht genau das, wonach Sie nach einer Offline-Lösung suchen (Sie benötigen eine Internetverbindung, um die Webseite zu öffnen), aber es ist ein sehr nützliches Werkzeug und eine Referenz für cmd-Befehle:
Ein AZ-Index der Windows CMD-Befehlszeile.
quelle
Ich weiß, es ist nicht genau das, wonach Sie fragen, aber Sie möchten vielleicht Powershell anstelle der Eingabeaufforderung lernen. Microsoft versucht, die Eingabeaufforderung für Powershell zu beenden, damit es eine gute Fähigkeit ist, dies zu lernen.
Wenn Sie sich in Powershell befinden, listet der Befehl
Get-Command
alle Befehle auf, die derzeit von allen geladenen Modulen ausgeführt werden können. Es wird eine Ausgabe erzeugt, die so aussieht:quelle