У меня есть скрипт Matlab, давайте назовем его «master.m», который загружает файл с именем «config.m». config.m содержит все переменные, используемые в master.m, так что они могут быть легко изменены без редактирования какого-либо кода. Проблема в том, что я пытаюсь получить основную функцию в master.m для загрузки config.m на основе пользовательского ввода. Поэтому в основном я хочу, чтобы пользователь мог указать имя файла для загрузки. Например, если config.m был назван testing.m, тогда пользователь мог бы напечатать в приглашении matlab:
>> master(testing.m)
и загрузит файл. НО я не могу понять, как это сделать правильно, я изучил функцию eval
, но она выдает ошибку. Вот код, который у меня есть на данный момент в master.m:
function [X,Y] = master(file)
eval(file)
Однако, когда я запускаю в приглашении Matlab:
>> master(config.m)
??? Attempt to execute SCRIPT config as a function:
/home/myusername/config.m
Я также пытался master('config.m')
,
master('./config.m')
, master(config)
и master(config.m)
но безрезультатно
Есть идеи?