Подавить имена каталогов, перечисленные с DIR - PullRequest
14 голосов
/ 23 августа 2011

Я хочу перечислить файлы в папке, но не в подпапках. DIR позволяет перечислять определенные типы файлов (скрытые, готовые к архивированию и т. Д.), А также только папки, но я не вижу, как перечислять только файлы.

Мне нужно следующее утверждение, чтобы вернуть файлы для дальнейшей обработки, но имена папок портят!

for /f %%a in ('dir /b %csvPath%') do (
)

Ответы [ 5 ]

30 голосов
/ 23 августа 2011

dir /b /a-d выдаст вам файлы без каталогов.Обратите внимание, что между /a-d нет пробела.«-» говорит «НЕ» каталоги.

Из справочной информации dir /?:

  /A          Displays files with specified attributes.
  attributes   D  Directories                R  Read-only files
               H  Hidden files               A  Files ready for archiving
               S  System files               -  Prefix meaning not
  /B          Uses bare format (no heading information or summary).
5 голосов
/ 31 августа 2015
dir /b /s /a-d

/s перечисляет каждый каталог и все подкаталоги, содержащие файлы, и (объявление) без пустых каталогов.

dir /b /s /a-d /p

/p pause

dir /b /s /a-d > list.txt
2 голосов
/ 23 августа 2011

Используйте dir /B /A-D только для получения файлов.

2 голосов
/ 23 августа 2011

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

dir /b /a-d

Что приведет к подавлению списка каталогов.

Переключатель /A имеет несколько других опций, помогающих с фильтрацией:

/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
0 голосов
/ 23 августа 2011

Требуется опция /A-D:

for /f %%a in ('dir /A-D /b %csvPath%') do ( )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...