禁止使用DIR列出目录名称

时间:2011-08-23 16:15:30

标签: windows cmd

我想列出文件夹中的文件,但不列出子文件夹。 DIR使您能够列出特定类型的文件(隐藏,存档准备等)以及仅文件夹,但我看不到如何仅列出文件。

我需要以下语句来返回文件以便进一步处理,但是文件夹名称正在搞乱!

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

5 个答案:

答案 0 :(得分:30)

dir /b /a-d会为您提供没有目录的文件。请注意/a-d之间没有空格。 ' - '表示“NOT”目录。

来自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).

答案 1 :(得分:4)

dir /b /s /a-d

/s列出包含文件的每个目录和所有子目录,以及(a-d)没有空目录。

dir /b /s /a-d /p

/p暂停

dir /b /s /a-d > list.txt

答案 2 :(得分:2)

您可以使用:

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

答案 3 :(得分:2)

使用dir /B /A-D仅获取文件。

答案 4 :(得分:0)

您需要/A-D选项:

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