Running a bash script from MATLAB

36 Ansichten (letzte 30 Tage)
Fabio Ambrosio
Fabio Ambrosio am 1 Jul. 2021
Beantwortet: Walter Roberson am 2 Jul. 2021
Hi,
I have a .sh script that needs to be run from MATLAB to open another program.
The command (/s/test2.sh) typed directly into the UNIX terminal works successfully.
The problem is: when running the same command in MATLAB, using the "system" and "unix" function, MATLAB returns the status '0' but the .sh script does not open the other program. I know the script was running because it prints some variables.
Could someone help me with this problem?
Thanks in advance.

Antworten (2)

Sayyed Ahmad
Sayyed Ahmad am 2 Jul. 2021

Walter Roberson
Walter Roberson am 2 Jul. 2021
When you system() or unix() then matlab does not use a login shell, so some initialization might not be done. Aliases might not be set up for example.
Also because it is not a login shell, your shell PATH and LD_LIBRARY_PATH or DYLD_LIBRARY_PATH might not have been set the way you expect.
You might need to
export VARIABLE=VALUE bash /s/test2.sh
or something like that

Kategorien

Mehr zu Programming finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by