I’ve been trying to execute some command-line programs from JUCE with pipes such as
ps aux | grep chrome and I want to launch it with
juce::ChildProcess cp; cp.start ("ps aux | grep chrome"); juce::String output = cp.readAllProcessOutput(); DBG ("Command Output:\n" + output + "\n"); uint32 exitCode = cp.getExitCode();
Problem is, the
juce::ChildProcess does not seem to recognize the pipe character “|” as I am expecting. For the varying piped commands I attempted, I got either of these two errors:
- The first command in the chain interprets the pipe character as an invalid argument.
- The commands after the first pipe are completely ignored and I only receive output for the first command in the chain.
Is there any way to run commands piped together using
Do I need to launch these command chains via a call to
I tried something like
zsh -c 'ps aux | grep chrome', but no luck yet.
Thanks for any help!