MATLAB: How to run commands in the background from MATLAB with Windows

cmdexecuteMATLABprocessshell

I would like to run a MATLAB script in batch mode in the background. If I use "!" or SYSTEM or DOS to start MATLAB, it does not return until the script has completed.

Best Answer

You can run any command in the background by using a BAT-file which contains the command you would like to run. For example, if you want to start MATLAB in the background and run a command, you can create the following BAT-file:
@echo off
matlab -automation -r "surf(peaks); pause(5); quit" > matlab_output.log
exit
Then, inside MATLAB, the following command will run the script in the background:
!start "MATLAB test" /Min /B test_bat.bat
The syntax for the START command is explained in the following website:
Attached is an example BAT-file: "test_bat.bat".