MATLAB Answers


set paths disappear after restart

Asked by Rafael Kübler on 1 Dec 2016
Latest activity Commented on by Brian Cluggish on 14 Sep 2018
Accepted Answer by Jan
Hello together,
latley it occures to me, that I loose paths that I have set in matlab. I use File -> set Path... -> add Folder... choose the relevant folder and save it. The new added path works until i restart Matlab. Then the new path is disappeared from the list. And it seems, that all the previous added paths are deleted aswell.
Can't tell where the problem is, because thats the way i always did it.
Does anyone know how it is possible, how the path list is deleted? Is there a file, where it is stored?
Thank you for your effort.

  1 Comment

I have noticed, that when i set the path to default, all from me added path disappear, but when i restart matlab they are back again. So all my changes are temporarly and not permantent altough i save it. It seems to me, that matlab reads a different "path-file" when restarted.
How can i fix this?

Sign in to comment.

1 Answer

Answer by Jan
on 1 Dec 2016
 Accepted Answer

The path is stored in the file pathdef.m inside Matlab's program directory. If you do not work with admin privileges (as recommended), you do not have write permissions for this file and all changes of the path are temporarily only. This is useful on a multi-user system, because the pathdef.m file belongs to all users.
I've added one folder to the path in pathdef.m file, which contains a function, which adds the user-defined paths temporarily depending on the user and current project. This works reliably and flexible. Alternatively you can create a startup.m and finish.m file to store the current path persistently between sessions using setpref and getpref.


so i fixed it now, by deleting the user path and changing the savepath to the matlabroot C:\Program Files (x86)\MATLAB\R2011a\toolbox\local\pathdef.m. Now i have just one pathdef.m, which gets loaded with or without admin. Since i am the only one using that pc it schould not be a problem.
Thank you Jan for your support.
In 2018 this has to be nonsense. If I set the path and save it it should be restored everytime I start MatLab.
Agreed. I save pathdef.m to my startup folder. And when I use the command "which pathdef" after startup, it points to that folder. But MATLAB does not use it to set the path. I fixed this by adding the command "path(pathdef)" to my startup folder, so the path is set to what I save it to the last session. But MATLAB should be doing this automatically.

Sign in to comment.