Can not run system commands from matlab -MAC OSX
28 次查看(过去 30 天)
显示 更早的评论
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
0 个评论
回答(1 个)
Matthias Fripp
2017-10-8
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 个评论
Walter Roberson
2023-2-25
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
2023-3-8
@Walter Roberson I set
>> 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
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!