Ubuntu下MATLAB不能保存路径设置的解决办法(借助MATLAB启动项修改)

我的Ubuntu 22.04上的MATLAB R2023a不能保存路径设置,每次重启都需要重新设置路径,很是麻烦。网上一搜,全是说给pathdef.m加权限就能解决的,但实际操作下来发现还是没用。

经探索,另一种方式就是通过修改启动文件来修改启动选项了,这样每次启动MATLAB时都会自动执行我们的脚本。下面对此进行介绍:

使用MATLAB启动文件(Startup File)修改启动选项

可以用startup.m文件修改启动选项。

  1. 首先,启动MATLAB,在命令行中输入
which startup

以寻找默认搜索路径下是否有startup.m文件。若找到,跳转到第四步。

  1. 若未找到,则可在MATLAB的任一默认搜索路径的文件夹下创建一个startup.m文件。先在命令行输入
path

以查看MATLAB的搜索路径,选择其中一条,建议用matlabroot/toolbox/local这条路径。

  1. 之后我们创建一个新的startup.m文件,例如,我们在终端中用vim新建并打开startup.m。注意将路径替换为你自己的路径,也可用别的方式创建文件并修改。
cd /usr/local/MATLAB/R2023a/toolbox/local
sudo vim startup.m
  1. 打开startup.m文件,在该文件中可以修改启动选项。

  2. 例如,我们将以下语句写入startup.m文件中,即可将指定的文件夹/xxx/xxx/xxx放到搜索路径当中:

addpath('/xxx/xxx/xxx')

再例如,我们也可以指定启动时打开的文件夹,只需写入以下语句

cd '/xxx/xxx/xxx'

因为这个脚本也是一个.m文件,因此除了启动MATLAB时会自动运行外,和别的MATLAB代码也没有区别,MATLAB里所有函数都可以用,大家可以触类旁通地进行自己需要的设置。

  1. 经实践表明,对于自己新创建的startup.m,尽管已经放在了MATLAB搜索路径下,但是MATLAB还是搜索不到这个文件。这一点可以在MATLAB命令行中输入which startup来检查确认,如果没搜索到,则我们还需要更新一下设置路径。具体地,在命令行中输入savepath,或者直接在MATLAB图形菜单中点开设置路径然后点一下保存即可。之后再输入which startup,就可以看到我们新创建的startup.m。最后重启MATLAB让设置生效。

  2. 以上六个步骤就是可以完成设置了,以下是附加讲解:

  3. 在启动时,MATLAB会自动执行一个名为matlabrc.m的启动脚本。除此之外,这个脚本还会去搜索MATLAB路径下的startup.m脚本并执行(前提是存在名为startup的可执行文件)。matlabrc.m位于MATLAB根目录下的matlabroot/toolbox/local文件夹,以我的Ubuntu 22.04上的R2023a版MATLAB为例,为/usr/local/MATLAB/R2023a/toolbox/local文件夹。但这个文件是供MathWork和多用户系统的系统管理员使用的,对普通用户而言这个文件是只读的,无法修改,否则也可以用这个文件修改启动选项。(当然提供权限后也是可以强制修改的。)因此还是创建一个startup.m要好一些。

  4. 经过步骤6后,之后每次启动时matlabrc.m都会调用startup.m这个脚本。如果你不小心删了startup.m,那么启动MATLAB时会警告matlabrc.m没有找到相应文件。这时只要在原路径下创建一个新的startup.m即可。

  5. 事实上,借助matlabrc.m脚本,MATLAB会执行搜索路径下所有名为startup的可执行文件,例如startup.m,startup.mlx.startup.mlapp,这些后缀都是可以的,未必是.m。同样也没对startup的数量做限制,不过有一个也就够了。

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值