prlctl: take input from script instead of command window
조회 수: 2 (최근 30일)
이전 댓글 표시
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?
댓글 수: 0
채택된 답변
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
Walter Roberson
2018년 5월 21일
Oh yes, and remember to delete the file afterwards. You might want to use onCleanup() for that.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 File Operations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!