Não tem certeza do que você quer dizer com:
and
zenity --text-info
only accept output from a file
Aqui está um comando que produz várias linhas de saída:
ls -l /usr/bin | wc -l
1726
Você acabou de enviar para zenity
:
ls -l /usr/bin | zenity --text-info --height=500 --width=400
ou:
zenity --text-info --height=500 --width=400 < <(ls -l /usr/bin)
O resultado é definitivamente uma caixa de mensagem escalável: