Finding where a m file or a function is called in a folder with subfolders and many other m files?
Show older comments
I have a 'xyz.m' file which contains a function with the same name, and I want to find where it has been called in a folder full of other m files. Can I do that easily and fast?Thanks a lot.
Answers (1)
cr
on 23 Nov 2020
If you mean which function is calling xyz.m, you can try adding the following line in xyz.m
evalin('caller','mfilename')
That should display the m file which called xyz()
5 Comments
AyedEng
on 23 Nov 2020
Do you mean you have several functions that are stored in multiple xyz.m files?
Or do you want to see which file contains a local function or variable with the name xyz?
For the first, which -all is an excellent start, while the second will take a lot more work. You can adapt some of the functions in this thread, although that might take some work.
AyedEng
on 23 Nov 2020
cr
on 24 Nov 2020
That should be a lot easier on windows file search or macos finder search.
Rik
on 24 Nov 2020
The OS tool will not be able to distinguish between comment and code. But it is a good idea to filter out files that don't contain the search string anyway, before parsing variable and function names.
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!