variável @bash captura stderr e stdout separadamente ou obtém o valor de saída [duplicado]

Esta pergunta já tem uma resposta aqui:

apture stdout e stderr em diferentes variáve 3 respostas

Preciso capturar a saída e o erro de um comando no meu script bash e saber se o comando foi bem-sucedido ou nã

No momento, estou capturando os dois assim:

output=$(mycommand 2>&1)

Preciso verificar o valor de saída do meu comando. Se falhar, preciso fazer algumas coisas com a saída; se o comando tiver êxito, não preciso tocar na saíd

Desde que estou capturando a saída, verificando $? é sempre um 0, pois o bash conseguiu capturar a saída na variável.

Este é um script muito sensível ao tempo, por isso estamos tentando evitar soluções mais lentas, como a saída para um arquivo e a re-leitura.

Se eu pudesse capturar stdout para uma variável e stderr para outra, isso resolveria o meu problema, porque eu poderia apenas verificar se a variável de erro estava vazia ou nã

Obrigado

questionAnswers(2)

yourAnswerToTheQuestion