Can not run system commands from matlab -MAC OSX

70 visualizaciones (últimos 30 días)
Hasan
Hasan el 21 de Nov. de 2013
Comentada: Cristiana Dinea el 8 de Mzo. de 2023
I am trying to run a image processing software called Flirt through matlab. When I try
system'flirt', I get a /bin/bash: flirt: command not found error.
If I try system('/usr/local/fsl/bin/flirt'); then it works fine. Typing just flirt in terminal also launches the program.
Is there a way of setting matlab to find this program in path and running it without giving its full address?
Thanks
Hasan

Respuestas (1)

Matthias Fripp
Matthias Fripp el 8 de Oct. de 2017
For some reason, Matlab on a Mac doesn't see the whole search path you normally get in a terminal. So you need to add the directory to the $PATH environment variable within Matlab. You can do that temporarily by running
setenv('PATH', [getenv('PATH') ':/usr/local/fsl/bin']);
You can make this permanent by adding the command to a startup.m file somewhere in your Matlab path (as shown by Matlab's "path" command).
  10 comentarios
Walter Roberson
Walter Roberson el 25 de Feb. de 2023
What steps did you take to put imglob and fslmerge onto your shell PATH? And what is the path to each of those executables?
Cristiana  Dinea
Cristiana Dinea el 8 de Mzo. de 2023
>> setenv('PATH', [getenv('PATH') ':/Users/cdinea/fsl/bin']);
and on my Mac fsl and imglob are recognized
cdinea@cdinea-mlt bin % imglob
Usage: imglob [-extension/extensions] <list of names>
-extension for one image with full extension
-extensions for image list with full extensions

Iniciar sesión para comentar.

Categorías

Más información sobre Timing and presenting 2D and 3D stimuli en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by