Як отримати список папок та підпапок без файлів?


83

Я намагаюсь надрукувати у файлі список папок та підпапок каталогу.

Коли я запускаю dir /s/b/o:n > f.txt, я також отримую список файлів. Мені потрібні лише папки та підпапки.

Хтось знає, чи можливо це зробити за допомогою інтерфейсу командного рядка?

Відповіді:


152

Спробуйте це:

dir /s /b /o:n /ad > f.txt

Привіт, ця команда вище містить також приховані та системні папки. Чи можемо ми проігнорувати це (навіть якщо опція Папки Windows мала відображати такі папки)
user187023

спасибі і мені! Чи вважаєте ви, що це підтримуватиметься у Windows 10 - я маю на увазі команди DOS?
Ендрю Сімпсон,

7
Не впевнені, чому ви змішуєте позначення ?, просто використовуйте dir /s /b /o:n /a:d > f.txtабо dir /s /b /on /ad > f.txt. Особисто я використовую :підхід для атрибутів комутатора, оскільки зрозуміліше, що відбувається.
Ленкімарт,

@Lankymart Дуже хороший момент! Ніколи не приділяв великої уваги різним способам позначення параметрів.
Андреас

20
 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

просто встановіть тип бажаного атрибута файлу, у вашому випадку / A: D (каталог)

dir / s / b / o: n / A: D> f.txt


5

Я використовував dir /s /b /o:n /a:d, і це працювало чудово, просто переконайтеся, що ви дозволили файлу закінчити запис, інакше у вас буде неповний список.


4

У мене недостатньо репутації, щоб коментувати будь-яку відповідь. В одному з коментарів хтось запитав, як ігнорувати приховані папки у списку. Нижче наведено, як ви можете це зробити.

dir /b /AD-H

3

Я використовую це від PowerShell:

dir -directory -name -recurse > list_my_folders.txt

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.