nohup matlab - how to pass input to scripts
Show older comments
I'm trying to run scripts on a remote server by using the following command, where TEST(.m) is my script.
nohup matlab -nosplash -nodisplay -nodesktop -r 'try; TEST; catch; save code_err; end; quit' > output.log
I want to run functions as well, for instance a function TEST(argin1,argin2), but the following command doesn't work:
nohup matlab -nosplash -nodisplay -nodesktop -r 'try; TEST(argin1,argin2); catch; save code_err; end; quit' > output.log
What should be the correct syntax?
EDIT: What is the syntax to launch functions that require inputs?
4 Comments
Rik
on 3 Mar 2021
With this syntax you can only run scripts or functions that do not require any input.
That means you will have to define your input arguments in your initial call, or call a script that will set the values of the inputs.
Andrea Togni
on 3 Mar 2021
Rik
on 3 Mar 2021
You will need to define the variables. Where are the values for argin1 and argin2?
Andrea Togni
on 3 Mar 2021
Answers (1)
Rik
on 3 Mar 2021
So actually your question is how to define a char array inside such a call. I suspect you simply need to escape the quotes:
nohup matlab -nosplash -nodisplay -nodesktop -r 'try; TEST(''/home/folder/subfolder/dataset1'',''/home/folder/subfolder/dataset2''); catch; save code_err; end; quit' > output.log
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!