我正在使用命令行Matlab(即远程ubuntu linux工作站)并尝试执行脚本。
我跑的时候:
Undefined variable "my_script" or class "my_script.m"
matlab会打开并给我一条错误消息,说明
matlab -nodesktop -nosplash -r "run('my_script.m');"
我在stackoverflow上找到了一个线程,用户遇到了类似的问题: Matlab: Running an m-file from command-line
但是当我尝试实现建议的语法时:
Unexpected MATLAB expression.
Error in run (line 96)
evalin('caller', [script ';'])
我现在收到语法错误,
{{1}}
我很少使用Matlab,甚至更少使用gui,所以我一直在尝试使用来自在线留言板的信息来修复语法。
答案 0 :(得分:4)
您只需要移除Model.find({}).distinct('room_type', function(err, room_types) {
//do something with room_types
});
扩展程序:
.m
原因是matlab -nodesktop -nosplash -r "my_script"
不是有效的Matlab语句。要运行脚本/函数,您需要使用其名称执行它,即my_script.m
。您可以看到,如果您尝试直接从Matlab命令窗口运行my_script
和my_script.m
语句。
您提到的第二个错误(使用my_script
命令时)似乎是您脚本中的实际错误。好像你忘了复制粘贴顶行,它应该显示错误发生的行号。您在下面看到的内容,即run
和Error in run (line 96)
只是堆栈跟踪中的第二个条目。它确实在使用evalin('caller', [script ';'])
评估脚本时发生错误。