我一直在MATLAB文档中追逐这个问题的答案很长一段时间......
例如,在
的底部http://www.mathworks.com/help/matlab/matlab_env/changing-the-startup-folder.html
它说
使用startup.m文件指定启动文件夹...
...这显然是荒谬的,因为其他地方的文档说startup.m
可以在所谓的'#34;启动文件夹"中找到。因此,此文件无法指定此文件夹的位置。
等等等。这种循环遍布我在startup.m
上的文档中找到的所有内容。
我想知道的是:我可以或不能自定义"启动文件夹的位置"以持久的方式,如果存在,这个持久性信息存储在哪里?
答案 0 :(得分:15)
我发现,最好的方法就是这样。假设您希望MATLAB在mystartupdir
中启动,并且您已将startup.m
放在该目录中。
在Windows上,为MATLAB创建一个快捷方式图标,然后右键单击它并选择Properties
。编辑字段Start In
。现在,无论何时想要启动MATLAB,都要使用此图标。
在其他平台上,您可以使用-sd
标志运行MATLAB来指定启动目录:
matlab -sd mystartupdir
如果未指定启动目录,MATLAB将使用userpath
命令指定的默认值。您可以将startup.m
文件放在那里。
答案 1 :(得分:13)
根据文档中的this page,您应该在“启动目录”中创建自己的startup.m
,如果您点击该链接,则会导致this page解释“启动目录“在此上下文中。
您可以使用我的系统上返回的userpath
函数检索此“启动目录”:
>> userpath
ans =
C:\Users\MYUSERNAME\Documents\MATLAB;
就个人而言,我只是将快捷方式中的“Start In”设置为我想要的任何内容 - 但显然如果你不在Windows上,这将无效;如果您不在Windows上或不想依赖快捷方式,则应在startup.m
返回的任何目录中调用cd
来创建userpath
。
文档还说,如果您愿意,可以修改userpath
函数,或matlabrc.m
中修改matlabroot/toolbox/local
文件(但如果您是{{1}},则只能修改后者MathWorks工程师或系统管理员,否则MathWorks会从上面狠狠地砸到你身上,或某事......)。
答案 2 :(得分:7)
在Mac OS X上,您可以将startup.m
文件放在/matlabrootfolder/toolbox/local/
中。例如,对于Matlab 2012,此路径可能如下所示:/Applications/MATLAB_R2012a.app/toolbox/local/
。
要防止在升级Matlab后删除文件,您可以使用符号链接到该文件。如果您的启动文件存储在$HOME/myDir/startup.m
,例如(在Bash中):
cd /Applications/MATLAB_R2012a.app/toolbox/local/
ln -s ~/myDir/startup.m .
参考:http://www.mathworks.com/help/matlab/matlab_env/startup-options.html
答案 3 :(得分:2)
这是Lx用户的指针(就像我最初那样困惑......)。我在基于Debian的盒子上工作,但同样适用于CentOS系统阵容等。
~/.matlab/<yr_release(s)>
matlab
实际上允许这样做。 ~/.matlab/startup.m
Workspace
。这是完全可选的 Set Path
,单击它并添加“matlab搜索路径”,并在左上角添加文件夹。添加~/.matlab
作为新的搜索路径。变更应立即生效。 ~/.matlab/startup.m
的内容。我讨厌GUI ...我想你可能想知道;-) HTH。
答案 4 :(得分:1)
正如http://fr.mathworks.com/help/matlab/matlab_env/matlab-startup-folder.html#buj_13n中所述:
更改启动文件夹
从R2014b开始,您可以使用更改启动文件夹 常规首选项面板。在“主页”选项卡上的“环境”中 部分,单击首选项。选择MATLAB&gt;一般。选择一个选项 对于初始工作文件夹。
默认情况下,初始工作文件夹设置为基于位置 MATLAB启动规则。
我希望它不涉及图形桌面界面。仔细查看文件matlab.setting
,Linux下的文件应位于~/.matlab/<your_release>/
,您可以找到这些行
<key name="UserPath">
<string>
<value><![CDATA[<some_directory>]]></value>
</string>
</key>
您当然可以手动指定启动目录。
答案 5 :(得分:0)
对我来说(我正在使用Linux),它将“startup.m”放到主目录中。显然,主目录默认位于matlab路径上。奇怪的是,当我将“startup.m”放入主目录中新创建的“matlab”(必须全部为小写)文件夹时,它也有效。让我知道它是否也适用于您的系统。