Main Content

dir

Enumerar el contenido de una carpeta

Descripción

dir enumera los archivos y carpetas de la carpeta actual.

ejemplo

dir name enumera los archivos y carpetas que coinciden con name. Cuando name es una carpeta, dir enumera el contenido de la carpeta. Especifique name utilizando nombres de ruta absolutos o relativos. El argumento name puede incluir el comodín * en el nombre de archivo, y tanto el comodín * como el comodín ** en el nombre de ruta. Los caracteres situados junto a un comodín ** deben ser separadores de archivo.

ejemplo

listing = dir(name) devuelve atributos de name.

Ejemplos

Ver el contenido de una carpeta

Enumere el contenido de una carpeta.

Cree una carpeta, myfolder, que contenga los archivos myfile1.m, myfile2.m y myfile3.m.

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

Enumere los archivos en myfolder.

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

Encontrar archivos que coincidan con un nombre especificado

Enumere todos los archivos con una extensión .m que contengan el término my.

Cree una carpeta, myfolder, que contenga los archivos myfile1.m, myfile2.m y myfile3.txt.

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

Enumere los archivos que coincidan de myfolder.

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

Encontrar archivos en subcarpetas

Enumere todos los archivos de la carpeta actual y todas las subcarpetas de la carpeta actual.

Cree una carpeta, myfolder1, que contenga estos archivos y carpetas:

myfile1.m
myfolder2
     myfile2.m
     myfolder3
         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

Enumere todos los archivos con una extensión .m de myfolder1 y todas las subcarpetas de 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  

Encontrar información en la estructura de retorno

Devuelva el listado de carpetas de myfolder a la variable MyFolderInfo.

Cree una carpeta, myfolder, que contenga los archivos myfile1.m, myfile2.m y myfile3.m.

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

Obtenga una lista de los archivos de myfolder. MATLAB® devuelve la información en un arreglo de estructuras.

MyFolderInfo = dir('myfolder')
MyFolderInfo=5×1 struct array with fields:
    name
    folder
    date
    bytes
    isdir
    datenum

Indéxela en la estructura para acceder a un elemento concreto.

MyFolderInfo(3).name
ans = 
'myfile1.m'

Encontrar la fecha de última modificación de un archivo

Obtenga la fecha y la hora en las que se modificó por última vez un archivo.

En primer lugar, consulte el campo datenum de la estructura que devuelve dir. El valor del campo datenum es un número de fecha de serie que no varía con la configuración local.

MyFileInfo = dir('myfile1.m');
FileDate = MyFileInfo.datenum
FileDate = 7.3647e+05

A partir de la versión R2022b, no se recomiendan los números de fecha de serie. Convierta el número de fecha de serie a un valor datetime mediante la función datetime.

FileDatetime = datetime(FileDate,ConvertFrom="datenum")
FileDatetime = datetime
   24-May-2016 11:24:31

Argumentos de entrada

contraer todo

Nombre de archivo o de carpeta, especificado como vector de caracteres o escalar de cadena. Si name es una cadena, enciérrela entre paréntesis. Por ejemplo, dir("FolderName").

Para enumerar archivos y carpetas de una ubicación remota, name debe contener una ruta completa especificada como localizador uniforme de recursos (URL). Para obtener más información, consulte Trabajar con datos remotos.

Para buscar varios archivos, utilice comodines en el nombre de archivo. Por ejemplo, dir *.txt enumera todos los archivos con una extensión txt en la carpeta actual. Para buscar en las carpetas y subcarpetas de la ruta de forma recurrente, utilice comodines en el nombre de ruta. Por ejemplo, dir */*.txt enumera todos los archivos con una extensión txt que se encuentran exactamente una carpeta por debajo de la carpeta actual, y dir **/*.txt enumera todos los archivos con una extensión txt que se encuentran cero o más carpetas por debajo de la carpeta actual. Los caracteres situados junto a un comodín ** deben ser separadores de archivo.

Nota

MATLAB® trata siempre el carácter * como un comodín, incluso en sistemas de archivos que admiten * en los nombres de archivos.

La función dir de MATLAB es consistente con el comando dir del sistema operativo Microsoft® Windows®, puesto que ambos admiten nombres de archivo cortos que genera DOS.

Argumentos de salida

contraer todo

Atributos de archivo, devueltos como arreglo de estructuras de n por 1, donde n es el número de archivos y carpetas que devuelve el comando dir.

Esta tabla muestra los campos de la estructura.

Nombre de campo

Descripción

Clase

name

Nombre de archivo o de carpeta

char

folder

Ubicación de archivo o de carpeta

char

date

Marca de tiempo de fecha de modificación

char

bytes

Tamaño del archivo en bytes

double

isdir

1 si el nombre es una carpeta; 0 si el nombre es un archivo

logical

datenum

Fecha de modificación como número de fecha de serie.

double

Sugerencias

  • Para excluir las entradas no válidas que devuelve el comando dir, utilice la función cellfun.

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

    Las entradas no válidas se producen cuando ejecuta dir con un argumento de salida y los resultados incluyen un archivo no existente o un archivo que dir no puede consultar por algún otro motivo. En este caso, dir devuelve los siguientes valores predeterminados.

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

    Las entradas no válidas se producen de manera más común en plataformas UNIX® cuando dir consulta un enlace simbólico que señala a un objetivo no existente. Un objetivo no existente es un objetivo que se ha movido, se ha eliminado o cuyo nombre se ha modificado.

  • Para ver una lista de todos los discos disponibles en las plataformas Microsoft Windows, utilice el comando net use de DOS en la línea de comandos.

    dos('net use')

    Alternativamente, escriba

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

    MATLAB devuelve los resultados al arreglo de caracteres r.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

expandir todo