how to use dir in subfolders?
Afficher commentaires plus anciens
I am trying to search for all the xlsx files inside a folder that have many subfolders to search from. I realize matlab does not search inside subfolders. So I tried this:
>> addpath(genpath('D:/'))
>> savepath
>> dir *.xlsx
but it is not working, please advice on what I can do. I want to make a code that works for any folder that I put inside genpath(' '). Thanks!
1 commentaire
Karan Gill
le 29 Juin 2016
Modifié(e) : Karan Gill
le 29 Juin 2016
Réponse acceptée
Plus de réponses (1)
Ba Mo
le 21 Avr 2019
0 votes
i dont recommend adding folders to matlab's path, casually like this
as lots of users reported above, new versions of matlab support the following command dir('**/*.mat');
However, old versions of matlab don't support this
instead of writing a large code, inspect the structure field "isfield" and so on, you could just easily ask DOS (or the command prompt) to do it for you. the output from MS-DOS isn't formatted, so you need to split the one block string to separate lines
newline = char(10); %char(10) is the character for line-break, or "enter"
[~,all_mats] = system('dir /s /b *.xls'); %you can also simply write: !dir /s /b *.xls
all_mats = strsplit(all_mats,newline)';
all_mats(cellfun(@isempty,all_mats))=[]; %the last entry/line might be an empty cell. delete it.
Catégories
En savoir plus sur Search Path dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!