Só faltou limpara a tela para começar!
---->
Com um pouco mais de cores
#!/bin/bash
clear
trap 'reset; exit' 2
while true; do
lin=2
col=$(($(tput cols) / 2))
c=$((col-1))
tput setaf 2; tput bold
for ((i=1; i<20; i+=2))
{
tput cup $lin $col
for ((j=1; j<=i; j++))
{
echo -n \*
}
let lin++
let col--
}
tput sgr0; tput setaf 3
for ((i=1; i<=2; i++))
{
tput cup $((lin++)) $c
echo '|||'
}
tput cup $lin $((c - 4)); echo BOAS FESTAS
let c++
tput bold
for ((i=1; i<=15; i++))
{
li=$((RANDOM % 9 + 3))
ini=$((c-li+2))
fim=$((c+li+2))
co=$((RANDOM % (li-2) * 2 + 1 + ini))
color=$((RANDOM % 10))
tput setaf $color
tput cup $li $co
echo '*'
}
tput cup $((lin+2)) 0; tput civis; sleep 0.4; tput sgr0
done
Boas Festas
Alves