访问子文件夹中的m文件,而无需将其永久添加到路径中

时间:2014-02-25 12:12:55

标签: matlab

我已经在许多子文件夹(spatial-econometrics toolbox)中下载了一个包含许多文件的工具箱,以便在一个特定项目中使用,我不想将其添加到路径中,因为我不认为我会去养成使用它的习惯,我不知道它是否会隐藏在stats工具箱中的函数。

如何访问此工具箱中的功能?有没有办法可能以编程方式将其添加到路径中,只是为了调用脚本的Matlab特定会话?处理这个问题的正确方法是什么?

2 个答案:

答案 0 :(得分:6)

仅为当前MATLAB会话添加路径到MATLAB搜索路径的顶部 -

addpath(PATHNAME)

与addpath相同,但对下一个会话保持良好 -

savepath(PATHNAME)

仅为当前MATLAB会话添加所有子目录 -

addpath(genpath(PATHNAME))

注意:添加路径时必须小心,因为如果有多个具有相同名称的功能文件,则会选择path字符串中较高的功能文件。

此处有更多信息 - addpathsavepathgenpath

答案 1 :(得分:3)

我使用以下命令将我的函数保存在与主脚本相同的目录中的单独“函数”文件夹中。只要您知道工具箱功能的路径,这应该适合您。

% Add path (at beginning of script)
added_path = [pwd,'/functions']; %change to: added_path = '/path' for your required path
addpath(added_path);

% Remove path (at end of script/script clean-up)
rmpath(added_path);

您可能希望查看genpath()以便以可管理的方式获取那些漫长而多风的工具箱路径。