Я хотел получить список имен файлов из папки, и я получил решение из этого поста Как скопировать все имена файлов в папке в блокнот? ,

Я хотел бы знать, где можно получить информацию обо всех параметрах / параметрах командной строки, доступных для одного окна cmd (не весь список команд). Я попытался dir -h / dir --help / dir help но ничего не помогает. Как вы получаете для команд в Unix, было бы полезно знать.

2 ответа2

2

МТК, ваш ответ только отчасти правильный. HELP работает только для системных команд, перечисленных при запуске HELP без операнда. Есть много команд / утилит, не перечисленных в справке, для которых доступна справка с /HELP или /? и сетевые команды требуют использования NET HELP или /HELP . /? Коммутатор работает практически для всего, что задокументировано, но для очень небольшого набора сетевых команд он предоставляет только параметры.

  • HELP и /? работать для всего перечисленного в ПОМОЩЬ. За исключением того, что в моей системе Windows 7 Home Edition по какой-то причине GRAFTABL имеет запись в справке, но, похоже, не существует (она есть в Enterprise Edition, которую я использую на работе); все остальные команды, которые описывались в HELP есть помощь. Вопреки тому, что Джеймс предлагает в своем комментарии к вашему собственному ответу, если HELP <command> работает, то <command> /? также работает, обратное, однако, не соответствует действительности. Кроме того, две из задокументированных команд, DISKPART и FSUTIL требуют административных привилегий даже для получения справки (и DISKPART если вы не являетесь администратором).

  • Сетевые команды требуют /HELP или /? Для сетевых команд это становится немного сложнее. Чтобы получить справку для сетевых команд в формате NET <command> , например NET USE , вы можете ввести NET HELP USE или NET USE /HELP ; NET USE /? вернет только синтаксис. Тем не менее, для других сетевых команд, таких как FINGER IPCONFIG и NBTSTAT <command> /HELP и <command> /? вернуть идентичные результаты. Для других, таких как HOSTNAME , эти два помогают предоставлять различную информацию, /? Параметр switch предоставляет справку, а параметр /HELP предоставляет некоторые (очень ограниченные) рекомендации по настройке имен хостов (по крайней мере, в моей системе).

  • Есть много системных команд для которых /? работает, но HELP нет. Есть некоторые системные команды, которые не описаны в HELP но для которых вы можете получить справку с помощью переключателя справки <command> /? (т.е. HELP <command> не работает). Обычно Windows сообщит вам, если вы используете HELP <command> с этими командами, которые вы должны попробовать /? , Примерами являются некоторые команды, которые являются реликвиями из предыдущих версий окон, таких как BOOTCFG (используется в Windows XP, но в Vista и Windows 7 вы используете BCDEDIT). Есть также некоторые команды, такие как DEFRAG , которые в документации больше рассматриваются как утилиты, а не команды, для которых доступна справка, но опять же только с /? , WINSAT является примером команды, которая требует /? для справки, но молчит, если не работает от имени администратора. Очевидно, что там, где HELP <command> не работает, <command> /HELP возможна в качестве альтернативы, как и в случае сетевых команд (например, DEFRAG /HELP работает).

Один чудак, SC отвечает на все HELP SC , SC /HELP и SC /? предоставление той же помощи, но во всех трех случаях помощь начинается с ошибки.

Вы можете найти довольно полный список команд здесь, хотя многое зависит от того, как вы определяете команду. Любой .EXE можно рассматривать как команду, и вы заметите, что сборник по ссылке содержит традиционные "команды", "утилиты командной строки", системные инструменты и вызовы для таких программ, как PowerShell и PowerShell_ISE . Обратите внимание, что справка командной строки не работает для некоторых программ, которые открываются в среде графического интерфейса, таких как PowerShell_ISE (именно поэтому мое четвертое предложение выше говорит "по существу"). Помощь онлайн предполагает, что это должно работать, но это не работает (ISE фактически неправильно /? в качестве операнда и пытается загрузить файл /? , Кроме того, обратите внимание, что хотя описания по ссылке часто лучше, чем в справке, операционные системы, к которым они применяются, не всегда точны (например, PowerShell_ISE говорит, что это применимо только к Windows 8 и Windows Server 2012; однако PowerShell_ISE доступен в Windows 7 ,

Суть в том, что вообще /? окажет вам помощь, если таковая будет. Для нескольких сетевых команд, а именно тех, которые начинаются с NET <command> , вы должны использовать /HELP для более подробной информации.

1

Понятно, что ввод help дает все доступные команды, а ввод help <cmd-name> дает все варианты.

например

> help
For more information on a specific command, type HELP command-name
ASSOC          Displays or modifies file extension associations.
ATTRIB         Displays or changes file attributes.
BREAK          Sets or clear
....

а также

> help dir
Displays a list of files and subdirectories in a directory.

DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
  [/O[[:]sortorder]] [/P] [/Q] [/R] [/S] [/T[[:]timefield]] [/W] [/X] [/4]

  [drive:][path][filename]
              Specifies drive, directory, and/or files to list.

  /A          Displays files with specified attributes.
  attributes   D  Directories                R  Read-only files
               H  Hidden files               A  Files ready for archiving
               S  System files               I  Not content indexed files
               L  Reparse Points             -  Prefix meaning not
  /B          Uses bare format (no heading information or summary).
  /C          Display the thousand separator in file sizes.  This is the
              default.  Use /-C to disable display of separator.
  /D          Same as wide but files are list sorted by column.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .