How to execute an .m file from the command line in windows without opening a new matlab copy

120 views (last 30 days)
The problem is, I want to execute a certain .m file from the command line. I know how to do already:
matlab -nosplash -r "run whathever.m"
Problem is, this opens a new instance of Matlab, I don't want that, I want it to simply use the already open instance of Matlab. Is there any way of doing that?
  3 Comments
Walter Roberson
Walter Roberson on 6 May 2020
Using -nodesktop can prevent a new graphical interface from starting up, but this is not quite the same as using an existing MATLAB instance. In particular, if you used an existing MATLAB instance, you would have access to the state of that instance, such as the contents of the base workspace and global workspace. In theory one could even wish to run a command line that affected the graphics of an existing session.

Sign in to comment.

Accepted Answer

Kaustubha Govind
Kaustubha Govind on 5 Mar 2013
I think you need to write code to call into MATLAB as a COM Server. You will also need to ensure that your currently running MATLAB session has been enabled to run as a COM Server. The instructions here should help with that.

More Answers (1)

Shizuka
Shizuka on 7 Mar 2013
Thanks for the suggestion, but I couldn't get MATLAB to run as a COM server no matter how many times I tried, are there alternative ways to execute an .m file in an open instance?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!