【发布时间】:2011-02-01 04:59:09
【问题描述】:
我正在做一个使用多种语言的项目:
- 用于查询数据库的 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 有哪些选择?
【问题讨论】:
标签: windows matlab scripting automation