5.0

5.0 | 1 rating Rate this file 11 Downloads (last 30 days) File Size: 9.83 KB File ID: #20597

Improved file hounding

by

 

07 Jul 2008 (Updated )

Search any file in current directory and subdirectories according to specified criteria

| Watch this File

File Information
Description

% filename : filehound.m
%==========================================================================
% syntax:
% filelist = filehound(filespec)
% or: filelist = filehound
% for default search for *.m files
%
% description : recursively examines directories for presence of files
% matching the filter defined by input parameter 'filespec'
%
% parameters in : filespec = (optional) filter for filenames default = '*.m'
% filespec can be of any kind: a wild card can be used both for filename
% and for extension.
%
% Examples:
% filelist = filehound('*')
% filelist = filehound('*.*')
%
% Search for all files in current directory and subdirectories
%
% filelist = filehound('myfile')
% filelist = filehound('myfile.*')
%
% Search for all files whose name is 'myfile' independently from extension
%
% filelist = filehound('*.ext')
%
% Search for files with specific extension 'ext'
%
% Search of file is powered also by wild-card handling (i.e.: '*'). The
% only assumption is that the current program assumes that '*' is at least
% a permitted char, i.e. '*' cannot be an empty string. In this way: 'ab*c'
% cannot be equivalent to 'abc' in the search. Moreover '*abc' refers to
% the last part of a string, 'ab*c' sets constraints on first two letters
% of the string and the last letter, 'abc*', requires that the first three
% letters of the string are 'abc'. The string here is meant both filename
% and extension. Hence possible calls of filehound can be:
%
% filelist = filehound('*x.m*t')
% filelist = filehound('a*x.mt*')
% filelist = filehound('ax*.*mt')
% ...
% ...
% and all the other possbile combinations. Only one wild-card for filename
% and extension is allowed.
%
% parameters out: filelist = cell array with paths for specified files
%
% NOTE: the code is not optimized - hence suggestions for further improvement are welcomed.

Acknowledgements

Filehound inspired this file.

MATLAB release MATLAB 7.2 (R2006a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
01 Sep 2008 Maurizio De Pittà

Hi everybody, I have uploaded a new version that uses 'filesep'. Thanks to Thierry Dalon for the nice suggestion.

01 Aug 2008 Thierry Dalon

it seems the author does not know filesep?

26 Jul 2008 Luis Marshall

Easy routine, very practical and effective.

Contact us