Arguments to executable file
1 次查看(过去 30 天)
显示 更早的评论
I am working on a conversion of IDL code to Matlab.
IDL --= spawn, dir_progs+'file.exe -M' + filedats+ '.dat -NMOD 5 -R -PARR' + dir_prog+'datafile.dat',/log_output
-M,-R,-PARR are the commands to control how it executes.
dir_progs - directory of file.
Can anybody help me to execute this code into MATLAB?
Thanks in advance.
0 个评论
采纳的回答
Walter Roberson
2017-6-26
cmd = sprintf('"%s" -M"%s.dat" -NMOD 5 -R -PARR"%s"', fullfile(dir_progs, 'file.exe'), filedats, fullfile(dir_prog, 'datfile.dat'));
[status, output_log] = system(cmd);
Note: it is risky to have a variable named "dir_progs" and another one named "dir_prog" with only the final "s" different between the two -- there is a somewhat high risk of getting the two of them confused or of accidentally typing one when the other was wanted.
I made the string more robust by adding "" around names, in case there happen to be spaces in directory names.
There are some places in the string that I would tend to suspect should have a space separating parts, but it is possible that it is correct without those spaces; it depends on what the program expects.
2 个评论
Walter Roberson
2017-6-26
The character vector output_log will contain whatever the .exe wrote out to standard output.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Search Path 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!