Mercurial > hg > ltpda
view m-toolbox/rm_cvs_dir.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line source
function rm_cvs_dir(path_in, rm_file_dir) % RM_CVS_DIR Remove recursive directories or files in the search directory % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % DESCRIPTION: RM_CVS_DIR Remove recursive the the handover % directories or files in the search directory % % CALL: rm_cvs_dir(toolbox, 'CVS'); % rm_cvs_dir(toolbox, '*.m~'); % rm_cvs_dir(toolbox, '*.o'); % rm_cvs_dir('/home/diepholz/matlab', 'CVS'); % % REMARK: rm_cvs_dir(toolbox, 'CVS'); This command will remove the file 'CVS' % as well as the directory 'CVS' % % % HISTORY: 24-05-2007 Diepholz % Creation % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Replace the regular expression '*' with '\w*' rm_file = strrep(rm_file_dir, '*', '\w*'); rm_file = strcat('^', rm_file); files = dir(path_in); %% Go through the files in the current directory for i = 1:length(files) if files(i).isdir == 1 %% Delete a directory if case sensitive matchs if (strcmp (files(i).name, rm_file_dir)) rm_dir = fullfile(path_in, rm_file_dir); try rmdir (rm_dir, 's'); catch error (sprintf('### rm_cvs_dir: Can not delete the directory %s',rm_dir )); end %% Go into the subdirectory elseif ~(strcmp (files(i).name(1), '.')) new_dir = fullfile(path_in, files(i).name); rm_cvs_dir(new_dir, rm_file_dir); end else %% the object is a file match = regexp(files(i).name, rm_file, 'match'); if ~isempty(match); remove_file = fullfile(path_in, files(i).name); try delete (remove_file); catch error (sprintf('### rm_cvs_dir: Can not delete the file %s', remove_File)); end end end end