如何将标准错误流输出分配给bash中的变量?

时间:2018-01-11 12:05:50

标签: linux bash shell

我知道我们可以在脚本中分配命令的输出,如下所示:

res=$(ls)    # assign the output of ls to res

现在我想将错误消息分配给变量:

res=$(XXXXXXX)

当我执行包含上述代码的脚本时,我在终端上收到错误消息:找不到命令,而res仍为空。

如果终端上没有显示任何内容,是否可以将command not found分配给res

1 个答案:

答案 0 :(得分:1)

是的,可以这样做,只需确保将stderr(2)流发送到stdout(1)并禁止stdout为NULL(/dev/null

res=$( non_existent_command 2>&1 >/dev/null )