Você pode usar a função PHP htmlentities para substituir quaisquer caracteres especiais HTML usando caracteres de escape HTML. br> Para usá-lo, você mudaria seu código para algo parecido com isto:
<?php
$output = shell_exec('/var/www/bin/fortune -a -o -s | /var/www/bin/cowsay -f eyes');
$encoded = htmlentities($output);
echo "<pre>", $encoded, "</pre>";
De acordo com essa demonstração - link
Explicação
Sempre que a saída do PHP contiver caracteres como <
, o webrowser presumirá (corretamente) seu HTML. o navegador assumirá que <
é o início de uma sequência de código HTML como <b>hello</b>
.
A função htmlentities substituirá esses caracteres especiais por seqüências de escape - que o navegador sabe simplesmente exibir para a tela e não interpretar como sendo caracteres HTML "especiais". por exemplo, <b>hello</b>
se torna <b>hello</b>