On Tuesday, 21 May 2019 at 12:51:41 UTC, Adam D. Ruppe wrote:
On Tuesday, 21 May 2019 at 07:16:29 UTC, Boqsc wrote:
I'm getting unsure why executeShell works on the pause
command, but cls that is responsible for clearing the text do
not.
When you ran pause, did it print the text "press any key to
continue"?
You are absolutely correct.
There was no output, it was captured, as executeShell is used for
capturing command output.
auto commandOutput = executeShell("pause");
writeln("Here is the output: ", commandOutput);
// Here is the output: Tuple!(int, "status", string,
"output")(0, "Press any key to continue . . . \r\n")
executeShell captures the output of the program, so I'm
guessing no. And that is why cls does nothing - its output is
captured into a string instead of displayed on screen.
spawnShell keeps the output connected unless you ask it not to.
http://dpldocs.info/experimental-docs/std.process.spawnShell.1.html
Thanks for summarising.