将 subshell 中的 stderr 重定向到 bash 脚本中当前 shell 中的标准输出

Redirect sterr in subshell to stdout in current shell in bash script

我有一个子shell执行一个功能:

local thing=$( doFunc )

doFunc 将日志输出发送到 stderr (2),并且“thing”被分配给 doFuncstdout 上的输出 (1) .

我怎么能运行这一行,而是在当前shell中从子shell打印stderrstdout

您可以先在另一个 FD 上复制 stdout,然后重定向到那个

exec 3>&1
local thing=$(doFunc 2>&3)