How to run matlab code in the server background?

Take the following matlab code for an example. How to run it in the server background? I tried nohup test.m & but failed.
% test.m
A = [
1,2,3;
4,5,6;
7,8,9
];
b = [1;1;1];
x = A*b;
save x;
Any suggestion is appreciated. Thanks!

답변 (2개)

Vaibhav
Vaibhav 2023년 10월 4일
Hi Jingyu Liu,
I understand that you want to run the MATLAB code in the background. One workaround is to utilize MATLAB in command-line mode.
Here are the steps to access MATLAB in this mode:
  • Commence MATLAB in command-line mode by entering the following command in the terminal:
matlab -nodesktop
  • This initiates MATLAB without the graphical user interface (GUI).
  • With MATLAB running in command-line mode, you can execute your MATLAB code by typing commands or running a MATLAB script or function.To run a script, such as "test.m," simply enter the script's name and press enter. It is possible to access multiple "MATLAB command windows" concurrently.
To Execute a MATLAB script with "nohup" feature, first, open a terminal on your Linux machine. second, navigate to the directory where MATLAB script file is located and execute the below command in the terminal:
nohup matlab -nodisplay -nosplash -r "run('test.m'); exit" > output.log 2>&1 &
You can refer to below blog to know more about '-nodesktop' feature:
You can refer to below MATLAB answer to know more about “nohup” feature:
Hope this helps!
Regards,
Vaibhav

댓글 수: 3

Neda
Neda 2023년 12월 11일
I have used "nohup matlab" with different suggested ways that I found in the internet, but I get this error all the time:
nohup: matlab: No such file or directory
while both matlab and nohup are accessible.
Yigithan Mehmet Kose
Yigithan Mehmet Kose 2024년 1월 16일
편집: Yigithan Mehmet Kose 2024년 1월 16일
Hello, when I run this, I get the following message:
[1] 69286
What does that mean?
You likely need to provide the path to MATLAB, such as
nohup /Applications/MATLAB_R2024a/bin/matlab -nodisplay -nosplash -r "run('test.m'); exit" > output.log 2>&1 &
The
[1] 69286
indicates that what was started was background job number [1] and that the process ID was 69286

댓글을 달려면 로그인하십시오.

SHAIKH
SHAIKH 2024년 8월 22일
편집: Walter Roberson 2024년 8월 22일
% Define the START and STOP inputs
START = 1; % Set START to 1 for ON, 0 for OFF
STOP = 0; % Set STOP to 1 for ON, 0 for OFF
% Determine the output based on the START and STOP inputs
% Output should be ON when START is ON and STOP is OFF
Output = START && ~STOP;
% Display the result
disp(['START Input: ', num2str(START)]);
disp(['STOP Input: ', num2str(STOP)]);
disp(['Output: ', num2str(Output)]);

댓글 수: 1

I do not understand how this solves the problem of running MATLAB code in the background ?

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

태그

질문:

2022년 2월 27일

댓글:

2024년 8월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by