Matlab是否有“项目文件”?

问题描述:

例如:Rstudio使用所谓的项目 - 以结尾的文本文件.Rproj。当你点击一个项目文件时,它会打开Rstudio并将工作目录设置为项目文件的位置。可选地,它执行写入它的任何代码。但是,它不会自行打开(即它不会在脚本编辑器中显示)。Matlab是否有“项目文件”?

在Matlab中有类似的东西吗?如果没有,如何模拟它?

目前我使用,使播放CD,让addpath电话等的.m文件但是当我点击文件浏览器:它只是打开Matlab和脚本编辑器显示出来,而不运行

  • 打开Matlab是我想要的,但在脚本编辑器中显示的实际上是多余的;我只需要运行它(并在我的Matlab桌面会话中使用结果)

(我想避免的是必须打开脚本文件,手动运行它,然后再次关闭它。烦人!)- 编辑

+0

您是否尝试过点击运行按钮或在打开F5后点击? – Suever

+0

我想避免的是打开它,然后再次关闭它(因为我不需要使用它)。这只是一些烦人的事情:运行它,然后关闭它。每次。 – jakub

+1

用'-nodesktop'运行matlab,你可以执行脚本,而不用实际启动所有的东西。为我节省了很多时间。 – Chris

Matlab没有“项目文件”(据我所知)。 但是,我认为你可以轻松地模拟你想要的。

让我们假设你有你的代码在一个文件夹C:\ MyProject的

1)新建一个m文件C:\ MyProject的\ MyProject.m与所有的初始化代码(CD, addpath调用,全局变量,无论你需要什么)。 这里是为了演示一个简单的例子:

disp('Replace this with your initialization code'); 

2)创建一个批处理文件C:\ MyProject的\ MyProject.bat如下:

MATLAB -r "run MyProject" 

现在,通过双击批处理文件,你会:

  • 打开完整的Matlab环境下
  • EXEC UTE脚本MyProject.m(不含在脚本编辑器加载它)
+0

酷! .bat文件是否也适用于Linux?还是有不同的方式? – jakub

+0

不,.bat文件只能在Windows系统上使用。在Linux上,您可以编写一个shell脚本并使其可执行。但是,以独立于平台的方式实现相同的结果要容易得多......请阅读我有关'startup.m'的其他答案。 –

为此,MATLAB提供startup.m文件(online documentation)。

您必须将所有初始化代码放在名为startup.m的文件中,该文件需要位于MATLAB搜索路径中(即在您的项目文件夹中)。该脚本将在您每次打开MATLAB时通过双击项目文件夹中的任意m文件来执行。

+0

我可以看到这是假定的工作流程。这与我想要的有点不同(即,我无法将脚本命名为任何我想要的,并且*有*打开.m文件而不是“projectfile”)。 – jakub