How to pass Matlab workspace variable into system command?

조회 수: 8 (최근 30일)
Saurabh Srivastava
Saurabh Srivastava 2014년 1월 18일
답변: cui,xingxing 2019년 1월 2일
I am using a program (wgrib) which is used to read .grb file and it runs in linux environment. This program required filename to read it. Now I want to use this programm using 'system' command in matlab. It works fine when I give the name of file but fails to execute when I give the variable which contains several file name. For ex. it works fine when I use
[u v]=system('wgrib xyz.grb') where wgrib is programm and xyz.grb is file name
But when I give it like
[u v]=system('wgrib filename')
where filename is a matlab variable which contains file name (i.e. xyz,grb), it does not execute and says didn't find file.
Can anyone suggest how to pass matlab variable in system command.

채택된 답변

Jan
Jan 2014년 1월 18일
[u v] = system(['wgrib ', filename])
  댓글 수: 1
Saurabh Srivastava
Saurabh Srivastava 2014년 1월 20일
Dear Jan, Thanks for suggestion but I have already tried it and It did not work. :(

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Walter Roberson
Walter Roberson 2014년 1월 20일
filename = 'xyz.grb';
[u v]=system( sprintf('wgrib %s', filename) )

cui,xingxing
cui,xingxing 2019년 1월 2일
filename = 'xyz.grb';
command = ['wgrib ',filename];
[u v] = system(command)

카테고리

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