Как нам добиться рекурсивного перечисления каталогов в DOS?
Я ищу команду или скрипт в DOS, который может дать мне рекурсивный список каталогов, похожий на ls -R
команду в Unix.
Как нам добиться рекурсивного перечисления каталогов в DOS?
Я ищу команду или скрипт в DOS, который может дать мне рекурсивный список каталогов, похожий на ls -R
команду в Unix.
Ответы:
Ты можешь использовать:
dir /s
Если вам нужен список без всей информации верхнего / нижнего колонтитула, попробуйте это:
dir /s /b
(Конечно, это будет работать для DOS 6 и более поздних версий; возможно, до этого работало, но я не могу вспомнить.)
tree /f
дает приятное отображение для глаз :-)
Вы можете использовать различные опции с 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 /s /b | find /v /c ""
.
Мне нравится использовать следующее, чтобы получить хорошо отсортированный список текущего каталога:
> dir . /s /b sortorder:N