首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

MATLAB 路径设置

  • 25-03-03 23:02
  • 4485
  • 8145
blog.csdn.net

本篇记录本人使用Matlab时,涉及到的有关Matlab搜索路径设置的问题。

  • Matlab的搜索路径
  • MATLAB搜索路径的添加
    • 使用图形用户界面添加搜索路径
    • 使用命令添加搜索路径
      • 添加绝对路径
      • 添加相对路径
  • MATLAB搜索路径的移除
      • 移除单个路径
      • 移除多个路径
      • 还有一种方法

Matlab的搜索路径

搜索路径(search path)或者路径是文件系统中所有文件夹的子集。Matlab搜索路径来高效的定位文件,且可以访问搜索路径里的任意文件。
搜索路径里文件夹的顺序很重要。当同名的文件出现在搜索路径上的多个文件夹时,Matlab使用最靠近搜索路径顶部(top)的文件夹里的那个文件。

Matlab共有两种搜索路径

  • MATLAB提供的文件夹或者其它MathWorks产品
    这些文件夹在 “matlabroot/toolbox“下, 使用matlabroot 可以查看该根目录.

  • MATLAB用户路径(userpath)
    用户路径文件夹是存储那些MATLAB在启动时添加到搜索路径的文件.

你可以把你要运行的文件夹添加到搜索路径.
类, 包, 和私有文件夹不再搜索路径上.

MATLAB搜索路径的添加

可以使用MATLAB图形交互界面添加, 也可以使用命令添加.

使用图形用户界面添加搜索路径

对于MATLAB2013及以上版本, 添加搜索路径的按钮在, Home 选项卡下的”Environment”下, 即下图中的Set Path
图2-1 找到 Set Path

打开Set Path对话框, 如下:
图2-2 Set Path 对话框

按照下图所示, 可以添加”DeepLearnToolbox-master”文件夹及其子文件夹到搜索路径.
图2-3 添加"DeepLearnToolbox-master"文件夹及其子文件夹到搜索路径

下图给出了添加后的结果:
图2-4 "DeepLearnToolbox-master"文件夹及其子文件夹到搜索路径的结果

使用命令添加搜索路径

主要使用aadpath, 命令. 下面举例说明几个函数. 假设要添加”D:\Workspace\Matlab\DL\DeepLearnToolbox-master”文件夹及其子文件夹到搜索路径, 其目录结构如下图
图2-2 要添加的文件夹目录结构

addpath即(Add folders to search path), 完成往搜索路径里添加文件的功能. 使用下面的命令仅仅将”DeepLearnToolbox-master”文件夹添加进搜索路径, 并未添加其子文件夹.

addpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master');
  • 1

如果想将该路径添加到搜索路径 后, 那么可以使用下面的命令

addpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master','-end');
  • 1

添加绝对路径

如上图所示, “DeepLearnToolbox-master”文件夹的子文件夹较多, 如果一一列举出来相当麻烦. 所以我们使用genpath自动生成路径, 如下

genpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master')
  • 1

结果输出:

ans =

D:\Workspace\Matlab\DL\DeepLearnToolbox-master;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\CAE;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\CNN;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\DBN;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\NN;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\SAE;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\data;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\tests;D:\Workspace\Matlab\DL\DeepLearnToolbox-master\util;

可以看出, genpath命令生成了 “DeepLearnToolbox-master”文件夹及其子文件夹的所有路径.
所以将 “DeepLearnToolbox-master”文件夹及其子文件夹添加到搜索路径的命令是:

addpath(genpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master'));
  • 1

这样, 你就可以在任何地方, 访问”DeepLearnToolbox-master”里的任意资源了, 这就是绝对路径的好处.

添加相对路径

也许你看到了 “DeepLearnToolbox-master”文件夹中的”README.md”文件, 是的这是一个使用说明文件, “DeepLearnToolbox-master”是一个MATLAB版工具箱, “README.md”文件就是介绍其功能及使用的. 也许你会看到文件”README.md”里说使用下面的命令添加搜索路径.

addpath(genpath('DeepLearnToolbox'));
  • 1

是的, 那么会有什么不同呢? 我们把当前工作路径切换到”DL”文件夹下 (注意, 之前我们并没有强调, 那是因为不需要, 但现在需要了, 否则, 下面的命令将返回空, 这是因为MATLAB找不到”DeepLearnToolbox-master”文件夹) , 然后在MATLAB命令窗口输入genpath('DeepLearnToolbox'), 发现返回值是:

ans =

DeepLearnToolbox-master;DeepLearnToolbox-master\CAE;DeepLearnToolbox-master\CNN;DeepLearnToolbox-master\DBN;DeepLearnToolbox-master\NN;DeepLearnToolbox-master\SAE;DeepLearnToolbox-master\data;DeepLearnToolbox-master\tests;DeepLearnToolbox-master\util;

可以看到路径个数一样, 只是”变短了”. 是的, 这是相对路径 (是相对于”DL”文件夹所在路径而言的, 而之前那个是绝对路径), 所以如果访问和使用”DeepLearnToolbox-master”工具包中的任意资源的话, 要把当前工作路径切换到”DL”文件夹下. 比如, 你想运行”DeepLearnToolbox-master”中”tests”下的测试示例, 那么你需要在把当前工作路径切换到”DL”文件夹下(而不是”tests”文件夹下), 否则, 会找不到调用的其它资源.

MATLAB搜索路径的移除

使用MATLAB图形用户界面操作, 很容易移除路径, 这里不介绍. MATLAB也提供了rmpath用于移除搜索路径.下面做一下简介:

移除单个路径

如果仅仅想移除单个路径, 如:”DeepLearnToolbox-master”文件夹.

  • 对于绝对路径, 那么只需输入下面的命令
rmpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master')
  • 1
  • 对于相对路径, 那么需输入下面的命令, 否则, 提示找不到.
rmpath('DeepLearnToolbox-master')
  • 1

移除多个路径

如果想移除多个搜索路径呢, 如:”DeepLearnToolbox-master”文件夹及其子文件夹, 这里依然借助genpath.

  • 对于绝对路径, 那么只需输入下面的命令
rmpath(genpath('D:\Workspace\Matlab\DL\DeepLearnToolbox-master'))
  • 1
  • 对于相对路径, 那么需输入下面的命令
rmpath(genpath('DeepLearnToolbox-master'))
  • 1

还有一种方法

修改pathdef.m文件!

到你的MATLAB安装目录中依次找到toolbox -> local -> pathdef.m文件,如下:
pathdef.m

直接删除你不要的路径即可。

这种方法在下面这种情况下很有帮助:当你打开MATLAB窗口时,命令窗口提示一堆Warning,说某某路径不存在或者不是路径(”Warning: Name is nonexistent or not a directory: “),如下图所示:
路径不存在提示

这往往是由于你移动了文件夹或者重命名了文件夹而致(比如我删除了sd显著性检测文件夹),而这个时候你打开Set Path(Home -> Set Path)窗口并没有看到这些路径,是不是很奇怪,其实不奇怪,路径不存在添加进去也没有,所以就不添加了。

解决办法就是修改上述pathdef.m文件,打开后,你会发现文件里依然保留着那些不存在的路径,删掉即可;当然也可以把文件夹命名回来,或移动回来。

哈哈,就这些吧!


  • Matlab的搜索路径
  • MATLAB搜索路径的添加
    • 使用图形用户界面添加搜索路径
    • 使用命令添加搜索路径
      • 添加绝对路径
      • 添加相对路径
  • MATLAB搜索路径的移除
      • 移除单个路径
      • 移除多个路径
      • 还有一种方法

注:本文转载自blog.csdn.net的如若明镜的文章"https://blog.csdn.net/enjoyyl/article/details/44830519"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top