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

9 ビュー (過去 30 日間)
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 件のコメント
Matt Merkley
Matt Merkley 2020 年 5 月 5 日
You can add -nodesktop to your call.
matlab -nosplash -nodesktop -r "whathever"
Walter Roberson
Walter Roberson 2020 年 5 月 6 日
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.

サインインしてコメントする。

採用された回答

Kaustubha Govind
Kaustubha Govind 2013 年 3 月 5 日
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.

その他の回答 (1 件)

Shizuka
Shizuka 2013 年 3 月 7 日
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?
  2 件のコメント
Kaustubha Govind
Kaustubha Govind 2013 年 3 月 7 日
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?
Walter Roberson
Walter Roberson 2020 年 5 月 6 日
Also, COM server only applies to MS Windows.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeWrite COM Applications to Work with MATLAB についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by