필터 지우기
필터 지우기

prlctl: take input from script instead of command window

조회 수: 2 (최근 30일)
Jacqueline
Jacqueline 2018년 5월 21일
댓글: Walter Roberson 2018년 5월 21일
I would like to automate the following sequence: enter a parallels VM, run executable, exit VM, check results using MATLAB, adjust settings, then re-enter and re-run executable until I get a certain result.
I am running a system command to enter the VM's terminal. Once I do this I would like to continue with the next line of code to be entered into the VM terminal.
For example, I would like to enter, run a command, then exit. Trying this:
!prlctl enter VM
dir
exit
MATLAB is busy after the first line, waiting for input from MATLAB's command window. I can type dir then exit on the command window and it works as expected, but how do I automate it so the the next line of input to the VM is coded instead of taken from MATLAB's command window?

채택된 답변

Walter Roberson
Walter Roberson 2018년 5월 21일
편집: Walter Roberson 2018년 5월 21일
Write the text into a file, and use I/O redirection.
tname = tempname();
fid = fopen(tname, 'wt');
fprintf(fid, 'dir\nexit\n');
fclose(fid);
cmd = sprintf('prlctl enter VM < "%s"', tname);
[status, message] = system(cmd);
  댓글 수: 2
Jacqueline
Jacqueline 2018년 5월 21일
Perfect. Thank you!
Walter Roberson
Walter Roberson 2018년 5월 21일
Oh yes, and remember to delete the file afterwards. You might want to use onCleanup() for that.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 File Operations에 대해 자세히 알아보기

제품


릴리스

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by