Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

dir

List folder contents

Syntax

Description

dir lists files and folders in the current folder.

example

dir name lists files and folders that match name. When name is a folder, dir lists the contents of the folder. Specify name using absolute or relative path names. The name argument can include the * wildcard in the file name, and both the * and the ** wildcard in the path name. Characters next to a ** wildcard must be file separators.

example

listing = dir(name) returns attributes about name.

Examples

collapse all

List the contents of a folder.

Create a folder, myfolder, that contains the files myfile1.m, myfile2.m, and myfile3.m.

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.m myfolder

List the files in myfolder.

dir myfolder
.          ..         myfile1.m  myfile2.m  myfile3.m  

List all files with a .m extension that contain the term my.

Create a folder, myfolder, that contains the files myfile1.m, myfile2.m, and myfile3.txt.

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.txt myfolder

List the matching files in myfolder.

cd myfolder
dir *my*.m
myfile1.m  myfile2.m  

List all files in the current folder and all of the subfolders of the current folder.

Create a folder, myfolder1, that contains these files and folders:

myfile1.m
myfolder2
     myfile2.m
     myfolder3.m
         myfile3.m
mkdir myfolder1
mkdir myfolder1/myfolder2
mkdir myfolder1/myfolder2/myfolder3

movefile myfile1.m myfolder1
movefile myfile2.m myfolder1/myfolder2
movefile myfile3.m myfolder1/myfolder2/myfolder3

List all files with a .m extension in myfolder1 and all of the subfolders of myfolder1.

cd myfolder1
dir **/*.m
Files Found in Current Folder:

myfile1.m  

Files Found in: myfolder2

myfile2.m  

Files Found in: myfolder2/myfolder3

myfile3.m  

Return the folder listing of myfolder to the variable MyFolderInfo.

Create a folder, myfolder, that contains the files myfile1.m, myfile2.m, and myfile3.m.

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.m myfolder

Get a list of the files in myfolder. MATLAB returns the information in a structure array.

MyFolderInfo = dir('myfolder')
MyFolderInfo = 

  5×1 struct array with fields:

    name
    folder
    date
    bytes
    isdir
    datenum

Index into the structure to access a particular item.

MyFolderInfo(3).name
ans =

myfile1.m

Get the serial date number for the date and time a file was last modified.

Use the datenum field of the structure returned by the dir command. Do not use the datenum function to convert the date field of the structure to a number. The results of the datenum function vary depending on the locale. Instead, use the datenum field.

MyFileInfo = dir('myfile1.m');
FileDate = MyFileInfo.datenum
FileDate =

   7.3647e+05

Input Arguments

collapse all

Name of a file or folder, specified as a character vector. To search for multiple files, use wildcards in the file name. For example, dir *.txt lists all files with a txt extension in the current folder. To search through folders and subfolders on the path recursively, use wildcards in the path name. For example, dir */*.txt lists all files with a txt extension exactly one folder under the current folder, and dir **/*.txt lists all files with a txt extension zero or more folders under the current folder. Characters next to a ** wildcard must be file separators.

    Note:   MATLAB® always treats the * character as a wildcard, even on file systems that support * in file names.

The MATLAB dir function is consistent with the Microsoft® Windows® operating system dir command in that both support short file names generated by DOS.

Output Arguments

collapse all

File attributes, returned as a n-by-1 structure array, where n is the number of files and folders returned by the dir command.

This table shows the fields in the structure.

Field Name

Description

Class

name

File or folder name

char

folder

Location of file or folder

char

date

Modification date timestamp

char

bytes

Size of the file in bytes

double

isdir

1 if name is a folder; 0 if name is a file

logical

datenum

Modification date as serial date number.

double

More About

collapse all

Tips

  • To exclude invalid entries returned by the dir command, use the cellfun function.

    MyFolderInfo = dir; 
    MyFolderInfo = MyFolderInfo(~cellfun('isempty', {MyFolderInfo.date})); 

    Invalid entries occur when you run dir with an output argument and the results include a nonexistent file or a file that dir cannot query for some other reason. In this case, dir returns the following default values.

    date: '' 
    bytes: [] 
    isdir: 0 
    datenum: [] 
    

    Invalid entries most commonly occur on UNIX® platforms when dir queries a symbolic link pointing to a nonexistent target. A nonexistent target is a target that is moved, removed, or renamed.

  • To obtain a list of available drives on Microsoft Windows platforms, use the DOS net use command at the command line.

    dos('net use')

    Or type

    [s,r] = dos('net use')

    MATLAB returns the results to the character array r.

See Also

| | | | | |

Introduced before R2006a

Was this topic helpful?