加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何在Windows上的脚本中调用Matlab?

发布时间:2020-12-13 21:28:34 所属栏目:Windows 来源:网络整理
导读:我正在开发一个使用多种语言的项目: 用于查询数据库的SQL Perl / Ruby用于快速和脏地处理来自数据库和其他一些簿记的数据 用于矩阵导向计算的Matlab 用于处理Matlab输出的各种统计语言(SAS / R / SPSS) 每种语言都适合它的利基,我们已经在每个语言中都有相
我正在开发一个使用多种语言的项目:

>用于查询数据库的SQL
> Perl / Ruby用于快速和脏地处理来自数据库和其他一些簿记的数据
>用于矩阵导向计算的Matlab
>用于处理Matlab输出的各种统计语言(SAS / R / SPSS)

每种语言都适合它的利基,我们已经在每个语言中都有相当数量的代码.现在,有很多手动工作来运行所有这些脚本更好的步骤.我已经在Linux上完成了这项工作,而且效果相对较好.

在Linux上:

matlab -nosplash -nodesktop -r "command"

要么

echo "command" | matlab -nosplash -nodesktop

…以“命令行”模式打开Matlab. (也就是说,没有创建窗口 – 它只是从STDIN读取,执行并输出到STDOUT / STDERR.)我的问题是在Windows(XP和7)上,这个相同的代码打开一个窗口而不读取从/写入命令行.它只是茫然地盯着我,完全忽略了STDIN和STDOUT.

如何在Windows上编写运行Matlab命令的脚本?我基本上想要做的事情:

ruby database_query.rb
perl legacy_code.pl
ruby other_stuff.rb
matlab processing_step_1.m
matlab processing_step_2.m
# etc,etc.

我发现Matlab在Windows上有一个-automation标志,可以启动一个“automation server”.这对于我的目的来说听起来有点过分了,我想要在两个平台上运行的东西.

在此工作流程中,我有哪些选项可以自动执行Matlab?

matlab -nosplash -nodesktop -r "command"

也适用于Windows.是的,它会打开另一个窗口,但这不是问题.我在Tomcat服务器上从Java包装器以批处理模式运行它并且没有问题.将所有命令放入脚本文件中,不要忘记使用exit命令关闭会话,并使用-r标志.您还可以找到-noFigureWindows和-wait参数.它适用于Windows和Unix.您可以使用特定于平台的标志,如果某些标志不受支持,则会被忽略.

Start MATLAB program (Windows platforms)

还有一种方法可以用C库隐藏matlab窗口.见engSetVisible.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读