Рекурсивный список каталогов в DOS

Как достичь рекурсивных каталогов в DOS?

Я ищу команду или скрипт в DOS, который может дать мне рекурсивный список каталогов, подобный ls -R команда в Unix.

5 ответов


Вы можете использовать:

dir /s

Если вам нужен список без всей информации о верхнем / нижнем колонтитуле, попробуйте следующее:

dir /s /b

(уверен, что это будет работать для DOS 6 и позже; возможно, работал до этого, но я не могу вспомнить.)


dir /s /b /a:d>output.txt перенесет его в текстовый файл


Вы можете получить параметры, которые вы просите, набрав:

dir /?

для полного списка попробуйте:

dir /s /b /a:d

вы можете использовать различные опции с FINDSTR, чтобы удалить строки, которые не хотят, например:

DIR /S | FINDSTR "\-" | FINDSTR /VI DIR

обычный вывод содержит такие записи:

28-Aug-14  05:14 PM    <DIR>          .
28-Aug-14  05:14 PM    <DIR>          ..

вы можете удалить их, используя различные параметры фильтрации, предлагаемые FINDSTR. Вы также можете использовать отличные unxutils, но он преобразует вывод в UNIX по умолчанию, поэтому вы больше не получаете CR+LF; FINDSTR предлагает лучший вариант Windows.


Мне нравится использовать следующее, Чтобы получить красиво отсортированный список текущего dir:

> dir . /s /b sortorder:N