How to automatically run all matlab files in a folder

35 visualizzazioni (ultimi 30 giorni)
If there are many matlab edits in my folder, is there any command in matlab that can automatically read the edit in the folder and run it?
  1 Commento
Image Analyst
Image Analyst il 13 Nov 2022
What do you mean? Do you want to locate any m-files that have been edited since some previous time? And then run those m-files or find the lines in the file that are different from some earlier reference version of the file? You know that dir can give you the time date stamp of the files, right?

Accedi per commentare.

Risposte (1)

Karim
Karim il 12 Nov 2022
something like this should work
folder = 'YourFolder';
mfiles = dir(fullfile(folder, '*.m'));
% loop over the files
for k = 1:length(mfiles)
file = mfiles(k).name;
try
% try to run the current m file
run(fullfile(folder, file));
fprintf('succesful run: %s\n', file);
catch
% print message if it failed
fprintf('failed to run: %s\n', file);
end
end
  4 Commenti
Stephen23
Stephen23 il 13 Nov 2022
Modificato: Stephen23 il 13 Nov 2022
"Can you think of a way to avoid it?"
By writing more robust code (i.e. functions and not scripts, not calling anti-pattern CLEAR ALL anywhere, etc.)
peter huang
peter huang il 14 Nov 2022
So when I write the code, it should be written as funtion to test the cases of various situations, isn't it using script for testing?

Accedi per commentare.

Categorie

Scopri di più su File Operations in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by