exist function says directory figures exists when it doesn't

12 views (last 30 days)
For some reason, even though the directory figures does not exist, the command
exist('figures','dir')
is returning a 7 instead of a zero. I assumed this had to be something to do with my startup setup, but it appears not to be.
Could somebody explain why this is happening please?
I'm running R2019b on ubuntu 18.04
  2 Comments
Les Beckham
Les Beckham on 5 Aug 2020
I see the same thing on my 2020a installation. Seems a bit strange. However, using the command
>> what figures
Packages in folder C:\Program Files\MATLAB\R2020a\toolbox\matlab\connector2\figures
connector mls
I see that figures is found on the Matlab path in a toolbox folder.
Apparently, if you are trying to detect whether 'figures' is a subfolder of the current folder you need to do this:
>> exist('.\figures', 'dir')
ans =
0
The doc on exist doesn't make it clear that it searches the entire Matlab path for any folders with that name but it seems that that is what it does.
Stephen23
Stephen23 on 5 Aug 2020
"The doc on exist doesn't make it clear that it searches the entire Matlab path..."
https://www.mathworks.com/help/matlab/ref/exist.html: "MATLAB searches starting at the top of the search path, and moving down until a result is found..."

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 5 Aug 2020
Use isfolder(), R2017b or later. isfolder() does not search along the MATLAB search path.

More Answers (0)

Categories

Find more on Search Path 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!