При работе на компьютере под управлением Windows в автономном режиме (без подключения к Интернету) возможно ли получить / сгенерировать список доступных команд cmd (включая использование) через командную строку?
windows
command-line
amiregelz
источник
источник
xcopy /?
чтобы получить информацию о команде. :)ping
,arp
,nslookup
? Кажется, чтоhelp
только генерирует список основных команд Windows, а не сетевых команд.windows\system32
папке, которые, я полагаю, смотрят при разрешении программ / команд. Для вашего списка вы можете искать exes там. Смотрите ответ Оливера.Вы можете найти официальный список в справочнике командной строки Microsoft AZ . Кроме того...
Чтобы ответить на ваш вопрос напрямую, я разработал сценарий, который просто перечисляет все
.exe
файлы, которые вы можете выполнить (потому что они расположены на вашемPATH
). По умолчанию в нем перечислены только те, которые также находятся в нем%WINDIR%
(если только вы не запускаете его--all
).В предыдущей итерации сценария я начинал каждую команду
/?
, что является очень плохой идеей. Не каждое приложениеPATH
понимает этот параметр. Некоторые просто запускаются и продолжают работать, вместо того, чтобы печатать какую-либо помощь. Так что довольно быстро съедает много ресурсов.Здесь. Это дает вам список всех доступных команд и их параметров. Как вы уже можете ожидать, это не так полезно, как можно себе представить.
Вот что действительно важно!
Более интересные , чем
.exe
файлы на вашемPATH
являютсяcmd.exe
встроенными модулями. КакIF
,FOR
иSET
. У меня нет полного списка встроенных модулей, но вы можете увидеть большинство из них, запустивcmd.exe /?
:Хотя в этот момент справка ссылается на расширения команд , поэтому список может быть неполным. Давайте внимательнее посмотрим на некоторые встроенные модули:
ЗА /?
В документации по
FOR
команде перечислены все безумные параметры, которые вы можете передатьFOR
. Это полезная утилита, если вы хотите написать что-либо, связанное с циклами .Эта документация также содержит объяснение безумной «тильду нотации»:
ЕСЛИ /?
IF
Команда для ветвления . Вам понадобится эта страница, потому что она перечисляет операторы сравнения:УСТАНАВЛИВАТЬ /?
SET
позволяет выполнять самые разнообразные операции с переменными.Она также позволяет манипуляции строк через вышеупомянутую «тильду нотации»
источник
help
? Например , сетевые команды типаipconfig
,nslookup
,arp
,telnet
иping
?C:\Windows\System32
. Я предполагаю , что это наPATH
ARP.EXE
же. Вы видите команды я уже упоминал , когда вы выполняете свой сценарий?PATH
содержит папку , которая больше не существует. Это вызывает сценарий сломать. Может в этом проблема? Я работаю над исправлением.PATH
: DТам в пакетном скрипт доступен на dostips.com ( CreateDosCommandIndex.bat ) , который генерирует файл HTML , содержащий полный список доступных команд дос в системе, наряду с их соответствующим выходом , генерируемым с помощью «имя_команд /?»
Я сообщаю это ниже, так как dostips.com, похоже, проблемы, связанные с БД нагрузки в это время, и их веб-сайт работает с перебоями.
источник
Processing SC
меня , хотя. Но, похоже , это только ждет какой - то вход. Так нажавEnter
пусть закончить :)help
команда показывает (что легче выполнить). Тем не менее, спасибо за вход, это очень полезно. @OliverSalzburg Он останавливается там для меня , как хорошо.Это не совсем то, что вы ищете автономного решения (нужно вам подключение к Интернету, чтобы открыть веб-страницу), но является очень полезным справочным инструментом для CMD команд:
AZ Индекс командной строки Windows, CMD.
источник
Я знаю, что это не совсем то, что вы просите, но вы можете начать изучать Powershell вместо командной строки. Microsoft пытается поэтапному отказу в командной строке для Powershell так, что это будет хороший навык, чтобы учиться.
Если вы находитесь в Powershell команда
Get-Command
выведет список всех команд , которые в настоящее время могут быть запущены из всех загруженных модулей. Он будет производить вывод , который выглядит следующим образом :источник