Dir


Applies To: Windows Server 2008,Windows Vista

Displays a list of a directory's files and subdirectories. If used without parameters, dir displays the disk's volume label and serial number, followed by a list of directories and files on the disk (including their names and the date and time each was last modified). For files, dir displays the name extension and the size in bytes. Dir also displays the total number of files and directories listed, their cumulative size, and the free space (in bytes) remaining on the disk.

For examples of how to use this command, see Examples.

Syntax


Copy Code

dir [<Drive>:][<Path>][<FileName>] [...] [/p] [/q] [/w] [/d] [/a[[:]<Attributes>]][/o[[:]<SortOrder>]] [/t[[:]<TimeField>]] [/s] [/b] [/l] [/n] [/x] [/c] [/4]

Parameters

Parameter

Description

[<Drive>:][<Path>]

Specifies the drive and directory for which you want to see a listing.

[<FileName>]

Specifies a particular file or group of files for which you want to see a listing.

/p

Displays one screen of the listing at a time. To see the next screen, press any key on the keyboard.

/q

Displays file ownership information.

/w

Displays the listing in wide format, with as many as five file names or directory names on each line.

/d

Displays the listing in the same format as /w, but the files are sorted by column.

/a[[:]<Attributes>]

Displays only the names of those directories and files with the attributes that you specify. If you omit /a, dir displays the names of all files except hidden and system files. If you use /a without specifying Attributes, dir displays the names of all files, including hidden and system files.

The following list describes each of the values that you can use for Attributes. Using a colon (:) is optional. Use any combination of these values, and do not separate the values with spaces.

d Directories

h Hidden files

s System files

l Reparse points

r Read-only files

a Files ready for archiving

i Not content indexed files

- Prefix meaning "not"

/o[[:]<SortOrder>]

Sorts the output according to SortOrder, which can be any combination of the following values:

n By name (alphabetical)

e By extension (alphabetical)

g Group directories first

s By size (smallest first)

d By date/time (oldest first)

- Prefix to reverse order

Note

Using a colon is optional. Multiple values are processed in the order in which you list them. Do not separate multiple values with spaces.

If SortOrder is not specified, dir /o lists the directories in alphabetic order, followed by the files, which are also sorted in alphabetic order.

/t[[:]<TimeField>]

Specifies which time field to display or use for sorting. The following list describes each of the values you can use for TimeField:

c Creation

a Last access

w Last written

/s

Lists every occurrence of the specified file name within the specified directory and all subdirectories.

/b

Displays a bare list of directories and files, with no additional information. /b overrides /w.

/l

Displays unsorted directory names and file names in lowercase.

/n

Displays a long list format with file names on the far right of the screen.

/x

Displays the short names generated for non-8dot3 file names. The display is the same as the display for /n, but the short name is inserted before the long name.

/c

Displays the thousand separator in file sizes. This is the default behavior. Use /-c to hide separators.

/4

Displays years in four-digit format.

/?

Displays help at the command prompt.

Remarks

The asterisk wildcard always uses short file name mapping, so you might get unexpected results. For example, the following directory contains two files (t.txt2 and t97.txt):


Copy Code

C:\test>dir /x
Volume in drive C has no label.
Volume Serial Number is B86A-EF32
Directory of C:\test
11/30/2004  01:40 PM <DIR>  .
11/30/2004  01:40 PM <DIR> ..
11/30/2004  11:05 AM 0 T97B4~1.TXT t.txt2
11/30/2004  01:16 PM 0 t97.txt

You might expect that typing dir t97* would return the file t97.txt. However, typing dir t97* returns both files, because the asterisk wildcard matches the file t.txt2 to t97.txt by using its short name map T97B4~1.TXT. Similarly, typing del t97* would delete both files.

Question mark (?): Use the question mark as a substitute for a single character in a name. For example, typing dir read???.txt lists any files in the current directory with the .txt extension that begin with "read" and are followed by up to three characters. This includes Read.txt, Read1.txt, Read12.txt, Read123.txt, and Readme1.txt, but not Readme12.txt.

Examples

To display all directories one after the other, in alphabetical order, in wide format, and pausing after each screen, make sure that the root directory is the current directory, and then type:


Copy Code

dir /s/w/o/p

Dir lists the root directory, the subdirectories, and the files in the root directory, including extensions. Then, dir lists the subdirectory names and file names in each subdirectory in the tree.

To alter the preceding example so that dir displays the file names and extensions, but omits the directory names, type:


Copy Code

dir /s/w/o/p/a:-d

To print a directory listing, type:


Copy Code

dir > prn

When you specify prn, the directory list is sent to the printer that is attached to the LPT1 port. If your printer is attached to a different port, you must replace prn with the name of the correct port.

You can also redirect output of the dir command to a file by replacing prn with a file name. You can also type a path. For example, to direct dir output to the file dir.doc in the Records directory, type:


Copy Code

dir > \records\dir.doc

If dir.doc does not exist, dir creates it, unless the Records directory does not exist. In that case, the following message appears:

File creation error

To display a list of all the file names with the .txt extension in all directories on drive C, type:


Copy Code

dir c:\*.txt /w/o/s/p

Dir displays, in wide format, an alphabetized list of the matching file names in each directory, and it pauses each time the screen fills until you press any key to continue.

Additional references

Command-Line Syntax Key