Display a list of files and subfolders
syntax DIR [pathname(s)] [display_format] [file_attributes] [sorted] [time] [options]
key [pathname] The drive, folder, and/or files to display,
this can include wildcards:
* Match any characters
? Match any ONE character
[display_format] /P Pause after each screen of data. /W Wide List format, sorted horizontally. /D Wide List format, sorted by vertical column.
/A:D Folder /A:-D NOT Folder /A:R Read-only /A:-R NOT Read-only /A:H Hidden /A:-H NOT Hidden /A:A Archive /A:-A NOT Archive /A Show all files
several attributes may be combined e.g. /A:HD-R
[sorted] Sorted by /O:
/O:N Name /O:-N Name
/O:S file Size /O:-S file Size /O:E file Extension /O:-E file Extension
/O:D Date & time /O:-D Date & time /O:G Group folders first /O:-G Group folders last several attributes may be combined e.g. /O:GEN
[time] /T: the time field to display & use for sorting
/T:C Creation /T:A Last Access /T:W Last Written (default)
[options] /S include all subfolders. /B Bare format (no heading information or summary). /L use Lowercase. /N long list format where filenames are on the far right. /X As for /N but with the short filenames included.
/C include thousand separator in file sizes.
/-C don't include thousand separator in file sizes.
The switches above may be preset by adding them to an environment variable called DIRCMD.
For example: SET DIRCMD=/O:N /S
Override any preset DIRCMD switches by prefixing the switch with -
DIR *.* /-S
Filenames longer than 8 characters
- DIR will always display the filename with the CASE as entered
Filenames shorter than 8 characters
- DIR may display the filename in upper or lower case - this may vary from one client to another (registry setting)
To obtain a bare DIR format (no heading or footer info) but retain all the details, pipe the output of DIR into FIND, this assumes that your date separator is /
DIR c:\temp\*.* | FIND "/" FOR /f "tokens=*" %%G IN ('dir c:\temp\*.* ^| find "/"') DO echo %%G
Normally DIR /b will return just the filename, however when displaying
subfolders with DIR /b /s the command will return a full
Checking filesize during a download (to monitor progress of a large download)
TYPE file_being_downloaded >NUL DIR file_being_downloaded
Since TYPE won't lock the file_being_downloaded in any way, this
doesn't pose a threat to the download itself.
You can also list files with XCOPY /L
You can also get File Sizes and Date/Time from Windows 2000/XP Batch Parameters
DIRUSE - show size of multiple subfolders. (Resource Kit)
Freedisk.exe - check free disk space. (Win 2K ResKit)
Where - locate files on disk, recursive searches. (Win 2K ResKit)
Using DIR to display drive status - disk missing / ready / empty
Q226370 - Browsing LAN directories is slow
Equivalent Linux BASH commands:
ls - List information about file(s)