Eu descobri!
Podemos passar o fluxo através de um arquivo temporário! No linux, podemos passá-lo através de um arquivo em /dev/shm
, para que os dados permaneçam na memória. Nós também podemos envolvê-lo em uma função:
get_output() {
$1 > /dev/shm/bash_pipe
eval $2='cat /dev/shm/bash_pipe'
rm /dev/shm/bash_pipe
}
Podemos então usá-lo assim: get_output fct var
e você pode usar a saída de fct
com $var
.