How to run matlab code in the server background?

조회 수: 122 (최근 30일)
Jingyu Liu
Jingyu Liu 2022년 2월 27일
댓글: Walter Roberson 2024년 8월 22일
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
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?
Walter Roberson
Walter Roberson 2024년 8월 22일
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
Walter Roberson
Walter Roberson 2024년 8월 22일
I do not understand how this solves the problem of running MATLAB code in the background ?

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

카테고리

Help CenterFile Exchange에서 Manage Products에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by