Parece que a maneira mais fácil é redirecionar a saída para um arquivo e depois para esse arquivo.
No script, será semelhante a:
#!/bin/sh
program > tmp_file
. tmp_file
rm tmp_file
echo $any_var_you_need
Em bash
você pode fazer isso sem arquivo temporário:
#!/bin/bash
source <(program)
echo $any_var_you_need
A única lacuna de segurança teórica é que o programa pode gerar algum código perigoso que destruirá algo.
Você pode evitá-lo com a verificação da saída de program
com sed
para ter certeza de que ele contém apenas as variáveis:
program | sed '/^\s*[a-zA-Z_.][_a-zA-Z0-9]*=[a-zA-Z0-9_-+.,]*/!d;s/ .*//;'
removerá todas as strings que parecem não ser variáveis (podem ser editadas a seu gosto).