在matlab中添加路径和删除路径

参考:
https://blog.youkuaiyun.com/niusiqiang/article/details/22606605
https://blog.youkuaiyun.com/abcabc77777/article/details/71171312
我们知道,在matlab里添加路径和删除路径可以直接使用【设置路径】这一个选项添加路径和删除路径。但是这样操作的缺点就是,1、对路径的影响是永久性的;2、无法在程序运行时进行操作。所以当我们不想永久更改路径设置里面的内容,而又想暂时将某文件夹添加到路径中,这就需要使用下面讲解的方法了。

需求

在matlab程序运行的时候添加文件夹及其子文件夹到路径,并且在程序运行结束的时候从路径中删除该文件及其子文件夹。
需要添加子文件夹的意义在于,如果程序使用到子文件夹中的文件,如果不添加子文件夹到路径中则不能访问到该文件。为了避免出现这样的情况,最好在添加的时候一并把子文件夹添加到路径中去。

代码

这里设置代码暂停20s用来观察代码实现的效果。

folder ='wavelet_pansharp';  % 要操作的文件夹
addpath( genpath(folder) );   
pause(20);   % 暂停20s
rmpath( genpath(folder)  );

上面代码实现的功能最大的特点就是退出matlab后,新添加的路径,我这里是‘wavelet_pansharp’文件夹,不会被保存下来,下次重新启动matlab后又需要重新添加。

相关功能和对应函数

1)添加当前文件夹的路径
addpath(pwd)
2)删除当前文件夹的路径
rmpath(pwd)
3)添加当前文件夹以及所有子文件夹的路径
addpath(genpath(pwd))
4)移除当前文件夹以及所有子文件夹的路径
rmpath(genpath(pwd))

### 在 MATLAB 程序中设置工作路径的方法 在 MATLAB 中,可以通过编程方式或命令行操作来设置工作路径。以下内容详细介绍了如何通过代码实现设置工作路径的功能。 #### 使用 `cd` 命令更改当前工作目录 `cd` 命令可以直接更改 MATLAB 的当前工作目录。例如,将工作目录更改为 `'F:\matlab\work'` 可以使用以下代码: ```matlab cd('F:\matlab\work'); ``` 此命令会立即更改当前工作目录[^2]。 #### 使用 `userpath` 设置用户默认工作路径 `userpath` 函数可以用于设置用户的默认工作路径。例如,将默认工作路径设置为 `'F:\matlab\work'` 可以使用以下代码: ```matlab userpath('F:\matlab\work'); ``` 此命令会更改用户的默认工作路径,并且在下次启动 MATLAB 时生效[^2]。 #### 使用 `addpath` 添加路径到搜索路径 如果需要将某个文件夹添加MATLAB 的搜索路径中,可以使用 `addpath` 函数。例如,将 `'C:\myfiles'` 添加到搜索路径中可以使用以下代码: ```matlab addpath('C:\myfiles'); ``` 此命令会将指定的文件夹添加到搜索路径中,但不会更改当前工作目录[^1]。 #### 使用 `savepath` 保存路径修改 当对搜索路径进行修改后,需要使用 `savepath` 函数保存这些更改,以便在下次启动 MATLAB 时保留这些路径设置。例如: ```matlab savepath; ``` 此命令会保存当前的搜索路径设置[^1]。 #### 使用 `pathtool` 打开路径设置工具 如果希望通过图形界面设置路径,可以使用 `pathtool` 命令打开路径设置工具。例如: ```matlab pathtool; ``` 此命令会打开路径设置工具,允许用户通过图形界面添加删除或调整路径顺序[^2]。 #### 自动变更路径的方法 在运行包含子程序的 MATLAB 程序时,如果需要自动变更路径以确保程序能够正确访问所需的文件或函数,可以在主程序中添加路径变更代码。例如: ```matlab originalPath = pwd; % 保存原始路径 programPath = 'C:\myProgram'; % 目标路径 if ~isfolder(programPath) error('目标路径不存在'); end cd(programPath); % 切换到目标路径 % 运行子程序 run('subroutine.m'); cd(originalPath); % 恢复原始路径 ``` 此代码片段会在运行子程序前切换到目标路径,并在完成后恢复原始路径[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值