How to execute an .m file from the command line in windows without opening a new matlab copy
24 views (last 30 days)
Show older comments
Shizuka
on 4 Mar 2013
Commented: Walter Roberson
on 6 May 2020
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
Matt Merkley
on 5 May 2020
You can add -nodesktop to your call.
matlab -nosplash -nodesktop -r "whathever"
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.
Accepted Answer
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.
0 Comments
More Answers (1)
Shizuka
on 7 Mar 2013
2 Comments
Kaustubha Govind
on 7 Mar 2013
Shizuka: Sorry, that's the only way that I can think of. Perhaps you need to have admin privileges when you attempt to start MATLAB as a COM Server?
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!