一尘不染

将命令输出重定向到bash中的变量失败

linux

我正在尝试将命令输出重定向到变量:

OUTPUT=$(sudo apache2ctl configtest)

然后阅读:

echo $OUTPUT

运行它时,输出如下:

19:19:12 user@user ~ OUTPUT=$(sudo apache2ctl configtest)
Syntax OK
Syntax OK

但是变量保持空白。对于其他命令,我已经尝试过相同的方法,并且一切正常。

OUTPUT=$(ls -l)

这会将文件列表写入变量,OUTPUT以便以后可以读取。我应该怎么做才能使其正常工作?


阅读 276

收藏
2020-06-03

共1个答案

一尘不染

也许输出去了stderr,不是stdout吗?

尝试这个: OUTPUT=$(sudo apache2ctl configtest 2>&1)

2020-06-03