Is there a -batch option prior to 2019a, i.e., in 2017a

4 visualizzazioni (ultimi 30 giorni)
In version 2019a there is a -batch option for running matlab non-interactively that does not start the desktop. Is there an equivalent option for earlier versions of matlab, e.g., 2017a?

Risposte (1)

Tom Holz
Tom Holz il 2 Mar 2020
Modificato: Tom Holz il 3 Mar 2020
[ EDIT: the command-line below is wrong. See Edric and Steven's comments for the correct way to emulate batch functionality on older releases. ]
Yes on Linux:
matlab -nodesktop -nodisplay -r myscript.m
On Windows, that syntax can still be used to run batch scripts, but it still opens a minimal terminal window.
.
  4 Commenti
Tom Holz
Tom Holz il 3 Mar 2020
Thanks for the corrections. I'd always wondered if -nodisplay and -nodesktop were redundant.
I also like how you handle exceptions to guarantee that exit is called.
Walter Roberson
Walter Roberson il 3 Mar 2020
There are a small number of exceptions that cannot be caught: out of memory, and infinite recursion (also, control-c). I do not know what would happen in a -r if one of those was encountered.
On Mac and Linux, one technique is to use < or | i/o redirection to send commands to to standard input, as matlab will continue to read commands from standard input after an exception. For example you could
(echo 'myscript'; echo 'quit') | matlab -nodisplay
If I recall correctly it is also possible to do something similar in Windows.

Accedi per commentare.

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Prodotti


Release

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by