今天偶然发现了这个话题:
http://www.mathworks.com/matlabcentral/newsreader/view_thread/112560
问题基本上是如何让 Matlab 读取您的 startup.m 文件,而不管您在哪里开始您的 matlab 会话。
提供的解决方案之一是:
一种解决方案是要求系统管理员在“matlabrc.m”中添加几行,将用户主目录中的一些预先确定的文件夹添加到 MATLAB 路径(例如,~/.matlabstart)。然后每个用户都可以在此文件夹中拥有自己的“startup.m”文件。
我最终在我的系统(OS X)中做的是在以下位置添加一个 startup.m 文件:
/Applications/MATLAB_R2011a.app/toolbox/local/
在这个 startup.m 文件中,我添加了:
if exist([getenv('HOME') '/.matlabrc/startup.m'])
run([getenv('HOME') '/.matlabrc/startup.m']);
end
这样用户就可以选择创建隐藏文件夹~/.matlabrc
并在其中放置文件startup.m
。在这个启动文件中,他们可以告诉 matlab 每当他们启动 Matlab 时要执行什么,而不管他们启动它的目录是什么。我添加到自己的个人startup.m
文件中的一个例子是
addpath(genpath('/Users/jmlopez/matlabcode/'))
现在我可以在该目录中添加尽可能多的文件夹,并且每次我自动启动 Matlab 时,所有文件夹都将添加到路径中,而无需修改路径。
问题是:Matlab 是否已经提供了一个像我创建的那样的特殊文件,还是我只是经历了所有这些麻烦来完成我想要的?如果答案是我给出的第二个选项,那么为什么 Matlab 不提供这个呢?每当您没有管理员权限并且我不想将我的startup.m
文件带到我去的每个目录时,将目录添加到 Matlab 路径是一件非常痛苦的事情。有人可以对此有所了解吗?