Gdzie mogę znaleźć listę poleceń, które można wykonać z cmd.exe?


Odpowiedzi:


3

Jak zauważyli inni, „dir * .exe / s” znajdzie wszystkie pliki EXE na dysku i zakładając, że masz do tego uprawnienia, możesz wykonać wszystkie z nich bezpośrednio (o ile uwzględnisz ścieżkę bezwzględną) .

Polecenie „help” zawiera listę podstawowych wbudowanych MS.

Ale zakładając, że chcesz prawdziwej odpowiedzi, a) listy rzeczywistych poleceń, które b) nie potrzebujesz pełnych ścieżek do uruchomienia c) uwzględnij wszystko w swoim systemie, nie tylko w narzędziach Microsoftu, musisz je odkryć programowo.

Nie wiem, jak to zrobić w DOS (lub CMD), ale mogę dać ci kroki.

  1. Dla każdego katalogu w Twoim ŚCIEŻKA Zmienna środowiskowa,
  2. wylistuj wszystkie pliki kończące się rozszerzeniami wymienionymi w PATHEXT Zmienna środowiskowa.

Po wpisaniu polecenia PATH jest listą lokalizacji, w których system Windows szuka tego polecenia, a PATHEXT to lista rozszerzeń plików, które zostaną dołączone do tego polecenia w celu dopasowania do pliku. Obie są listami rozdzielonymi średnikami i oba są wyszukiwane w kolejności. Oto mój system:

PATH=c:\WINDOWS\system32;c:\WINDOWS;C:\cygwin\usr\local\bin;C:\cygwin\bin;C:\cygwin\bin;c:\Perl\bin\;c:\Python24;c:\Python24\bin;c:\WINDOWS\System32\Wbem;c:\Program Files\Common Files\GTK\2.0\bin;c:\bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

Prawdopodobnie zgadłem, że dokonałem pewnych modyfikacji w systemie PATH; twój będzie prawdopodobnie mniej zaśmiecony. (Albo nie; QuickTime i Java nie mogą być jedynymi programami, które upierają się, że muszą dodać się do mojej ścieżki, więc twoje prawdopodobnie też mają pewne niespodziewane dodatki.)

Kiedy wykonam, powiedzmy,

C:\> findstr

.. Windows przeszukuje każdy wpis w zmiennej PATH w poszukiwaniu pliku o nazwie „findstr” (bez rozróżniania wielkości liter). Nie znajduje tego pliku w pierwszym wpisie, więc sprawdza wszystkie możliwe permutacje, dołączając rozszerzenia wymienione w PATHEXT do nazwy polecenia i sprawdzając, czy nie ma tego pliku. Najpierw sprawdza „C: WINDOWS system32 findstr.com”, ale nie ma takiego pliku. Następnie sprawdza „C: WINDOWS 32 findstr.exe” i znajduje go, więc to jest program, który uruchamia.

Mam nadzieję, że nie próbowałem uruchomić „C: WINDOWS system32 findstr.bat” lub „C: bin str.com” - pliki te zostałyby uruchomione, gdybym uruchomił jedną z nich:

C:\> findstr.bat
C:\> findstr.com

... ale ponieważ wpisałem tylko „findstr”, dostałem wersję .EXE.

W ten sposób Windows uruchamia polecenia w linii poleceń. Jeśli chcesz mieć pełną listę słów, które możesz tam wpisać i uruchomić, musisz sprawdzić własną zmienną PATH, gdzie szukać, oraz własną zmienną PATHEXT, której rozszerzenia szukać.

C:\> set | findstr PATH
PATH=C:\...
PATHEXT=...

(Jeśli ktokolwiek inny chce włączyć się do gry w zwięzłym wierszu poleceń systemu DOS, który to zautomatyzuje, zrób to!)


Co za odpowiedź. Upvoted. :)
Alex


1

W systemie Windows Vista Start- & gt; Uruchom- & gt; cmd otwiera cmd.exe.
Gdzie mogę znaleźć listę wszystkich poleceń, które można tam wykonać?

Pisanie na maszynie

help

w wierszu polecenia wyświetli się przegląd poleceń cmd, większość pozostawiona po dniach roboczych. Aby jednak uzyskać listę wszystkiego, co można uruchomić za pomocą monitu cmd (którym jest .exe, .com, .bat, .cmd i różne pliki wykonywalne, takie jak .pyc itd., Trzeba by zrobić

c:\> dir *.exe,*.com,*.bat,*... /s

(spowoduje to również wyświetlenie plików cookie przeglądarki kończących się na .com, więc zignoruj ​​te)


Uh ... Nie sądzę, żeby miał na myśli to drugie polecenie, które tam masz.
Breakthrough

Drugie polecenie wyświetli wszystkie pliki wykonywalne na c :! Chociaż z pewnością możesz je wykonać, tylko te na swojej ścieżce są naprawdę istotne, gdy pytasz „Co mogę uruchomić?” - zwykłe pliki wykonywalne powinny być podane.
Phoshi

Zapytał, a ja zacytuję „listę wszystkich poleceń, które można tam wykonać”. Wiem, że może wziąłem to zbyt dosłownie, ale pod względem technicznym to jedyne :) W każdym razie edytuj odpowiedź, jeśli masz na to ochotę. Nie mam nic przeciwko.
Rook

0

Możesz wpisać „help” w wierszu poleceń i zobaczyć większość wbudowanych poleceń (plus niektóre, które nie są wbudowane, ale są poważny te).

Mając to na uwadze, istnieje wiele plików „plików wykonywalnych / skryptów”, takich jak cokolwiek kończące się na .exe, .com, .cmd.

Jednak nie wierzę, że istnieje ich znalezienie wszystko chyba że po prostu wykonasz dir i potok we wszystkich plikach wykonywalnych - jakkolwiek wątpię, żeby to było skuteczne.



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.