Adding matlab paths temporarily

44 次查看(过去 30 天)
I have 2 functions with same names in 2 different folders A and B. Lets call the function as func.m
I have another main program where I will be calling this function.
I want to specify the folder from which func() will be used from.
addpath causes the added path to remain until the matlab session is closed and rmpath can be used to remove the path but it causes issues at times by accessing the wrong folder.
Is is possible to addpaths that will be used only when the script is run ? I don't want the path to be there for the entire matlab session.

采纳的回答

Walter Roberson
Walter Roberson 2019-4-16
path() can be used to change the entire path. So you could call path to record the path, and addpath, and then before return path(oldpath)
If you were using functions I would suggest an onCleanup.
I would recommend enclosing most of the script with try/catch where the catch restored the path and then rethrow() and the normal branch just restored the path.
You still have problems with control C or out of memory as you cannot catch those.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Search Path 的更多信息

产品


版本

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by