I have 1 <main folder> with many subfolder like:
<output_figure_file_1>
<output_figure_file_2>
<output_figure_file_3>
<output_data_file_1>
<output_data_file_2>
<output_data_file_3>
<file_1>
<file_2>
<file_3>
With some file inside subfolder. Now I need to delete all sub-folder named <output_figure_file_*>
with using this code:
close all; clear all; clc;
% remove sub folder on input
d=dir('output_figure_*')
dirlist=d([d.isdir])
dirlist=dirlist(~ismember({dirlist.name},{'.','..'}));
for idir=1:numel(dirlist)
%dird=fullfile(pwd,(dirlist(idir).name))
rmdir((dirlist(idir).name),'s')
end
It caused eror said:
??? Error using ==> rmdir
No directories were removed.
Error in ==> Untitled at 8
rmdir((dirlist(idir).name),'s')
Any one pls help me to fix this eror.
My version is R2008a

2 commentaires

Change the call to rmdir to:
[status, message] = rmdir(dirlist(idir).name, 's');
if ~status
error('Fed to remove %s, because %s', dirlist(idir).name, message);
end
and tell us what the new error message is.
Long Hà Vinh
Long Hà Vinh le 17 Déc 2018
I keep 1 file on opened. So It can not delete the 1st folder. I am so woolgathering. Sorry!

Connectez-vous pour commenter.

 Réponse acceptée

Jan
Jan le 17 Déc 2018
Add some error messages:
base = cd;
d = dir(fullfile(base, 'output_figure_*'));
dirlist = d([d.isdir]);
dirlist = dirlist(~ismember({dirlist.name}, {'.','..'}));
for idir = 1:numel(dirlist)
folder = fullfile(base, dirlist(idir).name);
[status, msg] = rmdir(folder, , 's');
if status ~= 1
error('rmdir:failed:now', 'Folder: %s, Message: %s', folder, msg);
end
end
What do you get as message?
Is one of the files opened anywhere?

2 commentaires

Long Hà Vinh
Long Hà Vinh le 17 Déc 2018
Dear Jan
You right, I keep 1 file in folder <output_figure_file_1> opened so I can not pass the loop 1. Now I turn it off and it run. Thanks!
Stephen23
Stephen23 le 17 Déc 2018
Modifié(e) : Stephen23 le 17 Déc 2018
An alternative to if and error is to use assert:
assert(status==1,'rmdir:failed:now', 'Folder: %s, Message: %s', folder, msg)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur File Operations 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!

Translated by