how to write change directories and run the m file in related directory from the the top level folder?
Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Ältere Kommentare anzeigen
Dear All,
I am still trying to figure how to do with my problem. Still struggling without any significant Improvement. Well I decide to rephrase my question in order to make it more understandable.
I have a folder which name is Main. in this folder I have 10 subfolders whose names are 1 through 10.in each subfolder there is only one m file. this m file performs calculations on the text files in each subfolder.
I need to have a code located in my main folder which iteratively changes the path to each subfoledr and run the m file located in that subfolder. Of course the output files of the m file should be dumped out in the same subfolder as the m file exists.
This will save much time of me. Thanks in advance.
Best
HRJ
3 Kommentare
Walter Roberson
am 31 Aug. 2015
Duplicates http://uk.mathworks.com/matlabcentral/answers/238098-how-to-change-the-directory-in-the-middle-of-a-code and should be merged into there
Homayoon
am 31 Aug. 2015
Walter Roberson
am 31 Aug. 2015
That is not a reason to create a new Question. If someone's answer does not meet your needs then clarify your needs without writing a new Question.
Antworten (2)
Homayoon
am 31 Aug. 2015
Walter Roberson
am 31 Aug. 2015
projectDir = 'Main';
maxdir = 10;
if ~exist(projectDir, 'dir')
error('top level directory not found');
end
startdir = cd();
for FolderNumber = 1 : maxdir
cd(projectDir);
foldername = sprintf('%d', FolderNumber);
if ~exist(foldername, 'dir')
warning(sprintf('Subdirectory not found: %s', foldername));
continue
end
cd(foldername);
WhateverTheOneMFileNameIsGoesHere;
end
cd(startdir);
3 Kommentare
Homayoon
am 31 Aug. 2015
Homayoon
am 31 Aug. 2015
Walter Roberson
am 31 Aug. 2015
startdir = cd();
projectDirName = 'Main';
projectDir = fullfile(startdir projectDirName);
maxdir = 10;
if ~exist(projectDir, 'dir')
error('top level directory not found');
end
for FolderNumber = 1 : maxdir
cd(projectDir);
foldername = sprintf('%d', FolderNumber);
if ~exist(foldername, 'dir')
warning(sprintf('Subdirectory not found: %s', foldername));
continue
end
cd(foldername);
H2Evolution;
end
cd(startdir);
Diese Frage ist geschlossen.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!