MATLAB Answers

Is There a Way to Find all Shadowed Functions on the matlabpath?

8 views (last 30 days)
Paul
Paul on 29 Jun 2021
Commented: Fangjun Jiang on 29 Jun 2021
I'm dealing with a code base of m-files all in one folder and sub-folders. I'm worried that different sub-folders contain files with the same name. If I put all of this on my matlabpath, is there any way to get a list of all shadowed functions, i.e., same-named function m-files in different subfolders? Or do I have to use a dir command and do some sort of count of each file name? Or some other way?

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 29 Jun 2021
Edited: Fangjun Jiang on 29 Jun 2021
I am not aware of any direct method. On the other hand, Files=dir('**/*.m') will give you all the M-file names including all sub-folders. Then it would be easy to run unique({Files.name}) to find out duplicated file names.
  2 Comments
Fangjun Jiang
Fangjun Jiang on 29 Jun 2021
Here is a way to find out duplicated names using unique()
str = ["abc";"defg";"defg";"hij";"klmn";"klmn"];
[UniqStr,IA]=unique(str);
index=setdiff(1:length(str),IA);
DuplicatedStr=str(index)

Sign in to comment.

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!