Responding to multiple DOS prompt questions from MATLAB command

2 views (last 30 days)
I am working on an optimization problem where I need to run a third party command prompt based software from MATLAB. This software does not take input directly while calling it like:
eval('!Hydmes.exe filename Username')
Instead, two inputs (filename, username) are required to provide one after another after the program is run.
I found a similar question here , but since I have two inputs I couldn't figure out how to solve this problem. Hence, currently I am stuck at MATLAB running this program and waiting for manual input of the filename and username. I am using Matlab2014b.

Accepted Answer

Walter Roberson
Walter Roberson on 29 May 2015
tfilename = tempname;
fid = fopen(tfilename, 'wt');
fprintf(fid, '%s\n', filename);
fprintf(fid, '%s\n', Username);
fclose(fid);
system(sprintf('"%s" < "%s", 'Hydmes.exe', tfilename));
delete(tfilename);

More Answers (0)

Categories

Find more on Java Package Integration in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!