Effacer les filtres
Effacer les filtres

How to change directory of matlab script in linux command line

9 vues (au cours des 30 derniers jours)
jan mischke
jan mischke le 2 Nov 2015
Modifié(e) : Bora Eryilmaz le 13 Nov 2015
I need to open matlab from a linux workspace and let it run a cript. The problem is, that my script is not in the home directory and I can't put it there. What I need to figure out is how to change the command so it will automatically run the script in the right directory.
matlab -nodisplay -r script.m
This command wont work because it wont find the script. Is there a way like
matlab -nodisplay -r ../test/test/test/script.m
to use something like that? It is hard to explain but I need to get it to work with a linux command (so no addpath or something like that possible). Thank you very much
  2 commentaires
jan mischke
jan mischke le 4 Nov 2015
I got another question to that...Is it possible to run two different scripts with the command line? I tried things like
matlab -nodisplay -r script1; script2;
but it wouldn't work. Right now I can just open matlab, run the script, close matlab and open it again to run the second script. Opening and closing matlab is very time consuming though. Is there a better way to run the second script without closing and reopening matlab? Thank you
Bora Eryilmaz
Bora Eryilmaz le 13 Nov 2015
Modifié(e) : Bora Eryilmaz le 13 Nov 2015
You are just missing quotes after the -r flag. As long as the two scripts are on your path, you can run both with a single command:
matlab -nodisplay -r "script1; script1"
If you know the absolute path of these scripts, you can also add the "cd" command:
matlab -nodisplay -r "cd('/home/username/matlab...'); script1; script1"

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 2 Nov 2015
matlab -nodisplay -r "try; run('../test/test/test/script.m'); catch ME; end; quit();"
Note:
  1. run() only applies to scripts, not functions.
  2. run internally cd's until the script is in the current directory. If the script needs to access files in the directory you start matlab from, then this is not the appropriate solution.

Plus de réponses (0)

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by