Благодаря малату. Ваш комментарий мне помог. Но я хочу добавить свой блок try-catch, так как нашел MExeption
метод, getReport()
который возвращает все сообщение об ошибке и выводит его на консоль Matlab.
Кроме того, я напечатал имя файла, так как эта компиляция является частью пакетного сценария, который вызывает Matlab.
try
some_code
...
catch message
display(['ERROR in file: ' message.stack.file])
display(['ERROR: ' getReport(message)])
end;
Для ложного имени модели, переданного в метод генерации устаревшего кода, результат будет выглядеть так:
ERROR in file: C:\..\..\..
ERROR: Undefined function or variable 'modelname'.
Error in sub-m-file (line 63)
legacy_code( 'slblock_generate', specs, modelname);
Error in m-file (line 11)
sub-m-file
Error in run (line 63)
evalin('caller', [script ';']);
Наконец, чтобы отобразить вывод в окне командной строки Windows, просто зарегистрируйте консоль matlab в файл с помощью -logfile logfile.txt
(используйте дополнительно -wait
) и вызовите пакетную командуtype logfile.txt