【问题标题】:How to get the list of Matlab saved setpath?如何获取 Matlab 保存的 setpath 列表?
【发布时间】:2014-05-09 22:35:11
【问题描述】:

我在 Matlab 中有 30 多个保存 setpath,我想先删除它们并测试一些东西,然后再将它们添加回来。实现这一目标的优化方式是什么。有没有一种方法可以获取保存的 setpath 列表,然后通过提供列表在 setpath 中添加路径。我尝试了getnpath,它返回了 matlab 工具箱路径。

【问题讨论】:

    标签: matlab path


    【解决方案1】:

    在 mat 文件中创建路径备份 -

    path_list = path;
    save('paths.mat','path_list');
    

    通过转到File menu 上的Set Path 选项来删除 30 条已保存的路径,然后执行您想做的任何测试。

    完成测试后,现在您希望重新添加已删除的路径。所以从备份的mat文件中恢复路径-

    load('paths.mat')
    path(path_list)
    

    【讨论】:

    • 我想提取用户定义的路径并想删除它们。如果我按照您的方法首先提取所有路径,然后恢复默认路径,然后如果我想再次加载提取的路径,那么可能会出现问题,因为 matlab 将具有默认路径并且提取的路径也将包含默认路径。
    • MATLAB 路径是 MATLAB 使用的所有可搜索路径的一大列表。它无法区分您的user defined path 或其内置代码的路径,也称为toolbox paths。因此,一旦您执行此操作path_list = path; save('paths.mat','path_list');,并且如果您不修改该mat-file,您的所有工具箱和用户定义的路径都将安全保存在其中。所以,我想说,只要把 mat-file 放在一个安全的地方就可以了。
    • 我想写两个脚本,第一个脚本将从 setpath 中删除用户定义的路径,第二个脚本将在 setpath 中添加用户定义的路径。我正在考虑使用命令“rmpath”和“addpath”
    • 使用savepath 之类的命令来处理路径是否适合下一次会话的问题。在question 上阅读更多相关信息
    • 是的,只是添加它-addpath 仅在当前会话中保持良好状态,我猜rmpath 也是如此,这意味着您不需要将路径保存为 mat 文件。但为了安全起见,您可以在保存为 mat 文件后对其进行测试。
    猜你喜欢
    • 2017-07-28
    • 1970-01-01
    • 2012-01-29
    • 2021-04-15
    • 2012-07-24
    • 2014-06-26
    • 1970-01-01
    • 2021-10-08
    • 2016-11-21
    相关资源
    最近更新 更多