2011-08-23 9 views
7

フォルダ内のファイルを一覧表示するが、サブフォルダは表示しません。 DIRを使用すると、特定の種類のファイル(隠しファイル、アーカイブファイルなど)とフォルダのみを一覧表示できますが、ファイルのみを一覧表示する方法はわかりません。ディレクトリ名がDIRで表示されないようにします

さらに処理するためにファイルを返すには次のステートメントが必要ですが、フォルダ名が問題になります。

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

答えて

11

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). 
+0

幻想。私は実際にヘルプファイルを読んだが、それは長い一日の終わりにあった!それを指摘してくれてありがとう。 – RichGK

0

は、あなたが使用することができますディレクトリがリストされて抑制します

dir /b /a-d 

。ファイルのみを取得するために

 
/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 
1

使用dir /B /A-D

/Aスイッチは、フィルタリングを支援するために他のいくつかのオプションがあります。

0

あなたは/A-Dオプションたい:空のディレクトリなし

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

/sリストのすべてのディレクトリとファイルを含むすべてのサブディレクトリ、および( - d)を。

dir /b /s /a-d /p 

/p休止

dir /b /s /a-d > list.txt 
関連する問題