Redireciona stdout e stderr para /dev/null :
> /dev/null 2>&1
OR no bash:
&> /dev/null
Você pode fazer isso para todos os programas gerados pelo seu script usando exec com o redirecionamento no início do seu script.
exec > /dev/null 2>&1
A menos que os programas que você invoca em seu script acessem o terminal diretamente (raro), isso deve cobrir você.
Uma nota sobre redirecionamentos:
A ordem é importante. Precisa ser > /dev/null 2>&1 , NÃO 2>&1 >/dev/null . Eu costumava pensar que o último funcionaria porque > parece uma seta que me faz pensar em ponteiros (como a palavra "redirecionar"), e se eu apontar stderr para stdout e então apontar stdout para / dev / null, então ambos devem estar apontando para / dev / null. Esse não é o caso, no entanto. Os descritores de arquivo não são ponteiros e é mais útil pensar em > como uma atribuição a um descritor de arquivo em vez de apontá-lo. (Mais ou menos, tecnicamente, um fd é apenas um número e você precisa de funções do sistema como dup2 para abrir um arquivo diferente no mesmo descritor de arquivo; mas acho que a atribuição é uma boa abstração de alto nível).