📄 CLONAR ÁRBOL DE DIRECTORIOS EN MATLAB

Download PDF

En algunas ocasiones surge la necesidad de extraer la estructura de carpetas (árbol de directorios) para hacer referencia a la información contenida en un disco o duro o unidad de almacenamiento en general, sin necesidad de listar los archivos, sino solo las carpetas. El directorio podría contener por ejemplo, archivos de audio, mediciones acústicas, grabaciones hidroacusticas, niveles de presión sonora para los informes de ruido, etc. El siguiente script MATLAB permite realizar un copia idéntica (clonado) de la estructura de carpetas y guardarla en otro lugar.

pathscan = pwd;

%% CARPETA PARA ESCANEAR
pathscan = ['C:\Users\leonardo.parada\Desktop\capeta_nivel_1'];


arbol_A  = dir([pathscan '/**/*']);

for k = 1 : length(arbol_A)
A{k} = arbol_A(k).folder; 
end

carpetas = unique(A)';
numero_carpetas = length(carpetas);
carpetas_full = [num2cell([1:numero_carpetas]') carpetas num2cell(repmat([NaN], numero_carpetas,2))];

for k=1:numero_carpetas
    %cell2mat(carpetas(k))
    carpetas_full{k,3} = length(find(cell2mat(carpetas(k))=='\'));
    carpetas_full{k,4} = find(cell2mat(carpetas(k))=='\');
end

cabeceras = {'ID' 'RUTA' 'NIVELES' 'POSIC_SEPARADOR'};

T = cell2table(carpetas_full,'VariableNames',cabeceras);

[B,I] = sort(cell2mat(carpetas_full(:,3)));
carpetas_full_sort = carpetas_full([I],:);

carpetas_full_sort_destino = carpetas_full_sort; 

TT =  cell2table(carpetas_full_sort,'VariableNames',cabeceras);

lugar_donde_cambiar = max(cell2mat(carpetas_full_sort(1,4))); % Ejem:33

%% SE CREAN LOS DIRECTORIOS CLONADOS

destino = ['C:\Users\leonardo.parada\Desktop\donde_van'];

for k=1:numero_carpetas
    aux_ruta = cell2mat(carpetas_full_sort(k,2));
     aux_ruta(1:lugar_donde_cambiar);
     carpetas_full_sort_destino{k,2} = [destino aux_ruta(lugar_donde_cambiar:end)];
end

for k=1:numero_carpetas
   mkdir(cell2mat(carpetas_full_sort_destino(k,2)));
end

The following two tabs change content below.

LEONARDO PARADA VALENCIA

INGENIERO ACÚSTICO Estudiante Magister en Gestión Ambiental Desarrollador de contenidos multimedia en www.ingenieriaacustica.cl EXPERTO EN RUIDO AMBIENTAL/OCUPACIONAL - PROTOCOLOS AMBIENTALES APLICADOS EN CHILE: DS38/11 Y PREXOR. EXPERTO EN DISEÑO SONORO Y MÚSICA PARA VIDEOJUEGOS

Latest posts by LEONARDO PARADA VALENCIA (see all)