How to answer a call for an input from the script?

4 views (last 30 days)
So I used the system('run.bat') in my script to run a series of commands that will ask certain questions. I want to code the answers to those questions in my script such that I dont have to manually answer them in MATLAB's command window. Is there a way to do this?
  2 Comments
chrisw23
chrisw23 on 15 Dec 2022
Edited: chrisw23 on 15 Dec 2022
per definition of the system cmd there will be no return value until the execution was finished
status = system(command) calls the operating system to execute the specified command. The operation waits for the command to finish execution before returning the exit status of the command to the status variable.
so I think the system cmd is not the way to solve your problem
Ali Almakhmari
Ali Almakhmari on 15 Dec 2022
Thats what I guessed as well. I tried researching few possibilities but failed in all directions. If you have any tips or somewhere to look further let me know.

Sign in to comment.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 15 Dec 2022
Edited: Fangjun Jiang on 15 Dec 2022
I know if you run system('MyApp.exe') and MyApp.exe asks for your input and you key in three letters 'abc',
then you can create a text file, e.g. input.txt which contains the text 'abc' without the single quotes,
then you can run system('MyApp.exe < input.txt') which will not require you to type in anymore.
This method have helped many in this forum.
Try this with your 'run.bat'. I am not sure if run.bat calls many App.exe, whether you can combine all the inputs into one text file.

More Answers (0)

Categories

Find more on Control System Toolbox in Help Center and File Exchange

Tags

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!