Issue
I'm trying to redirect command output to a variable:
OUTPUT=$(sudo apache2ctl configtest)
and then to read it:
echo $OUTPUT
When running it the output is the following:
19:19:12 user@user ~ OUTPUT=$(sudo apache2ctl configtest)
Syntax OK
Syntax OK
But the variable stays blank. I've tried the same for other commands and everything works fine.
OUTPUT=$(ls -l)
This writes file list to variable OUTPUT
so that it can be read later.
What should i do to make it work?
Solution
Maybe the output goes to stderr
, not stdout
? Try this:
OUTPUT="$(sudo apache2ctl configtest 2>&1)"
Answered By - johnshen64 Answer Checked By - David Marino (WPSolving Volunteer)