'system' command error: " /bin/sh: -c: line 0: syntax error near unexpected token `(' "

8 次查看(过去 30 天)
I'm running Matlab on Mac OS. Trying to execute the following bash command, which executes without a problem in the bash shell:
join -1 3 -2 1 -o 1.3 <(sort -k3 file1.txt) file2.txt > output.txt
Using Matlab's 'system' command, and passing that string to it I get the following error:
/bin/sh: -c: line 0: syntax error near unexpected token `('
I suspect this is a problem with Matlab using the sh shell instead of Bash. Is there a work around on this?
Thanks!

回答(3 个)

Walter Roberson
Walter Roberson 2015-7-15
Notice in the documentation:
<<On UNIX, MATLAB uses a shell program to execute the given command. It determines which shell program to use by checking environment variables on your system. MATLAB first checks the MATLAB_SHELL variable, and if either empty or not defined, then checks SHELL. If SHELL is also empty or not defined, MATLAB uses /bin/sh.>>
  5 个评论
Gautam Shetty
Gautam Shetty 2017-2-28
Doesn't work. Putting -nodesktop before -r opens the GUI application, doesn't run on command prompt.
Walter Roberson
Walter Roberson 2019-7-24
/Applications/MATLAB_R2016b.app/bin/matlab -nojvm -nodesktop -r 'linear_regression(''sample_data1.txt'',1,0)'

请先登录,再进行评论。


Fardowsa Halane
Fardowsa Halane 2019-7-24
./matlab: line 1: syntax error near unexpected token `='
./matlab: line 1: `function p = pathdef'

Fardowsa Halane
Fardowsa Halane 2019-7-24
./matlab: line 1: syntax error near unexpected token `='
./matlab: line 1: `function p = pathdef'
what do i do about this please help.

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by