Uma questão interessante, mas bastante aberta. Que tipo de bips você está tentando capturar? E qual saída você está tentando lidar? Erros? Conclusão de processos?
growlnotify é a ferramenta de linha de comando para postar as notificações do Growl. Ele precisa ser instalado separadamente e pode ser encontrado na pasta Extras na imagem de disco Growl.
Você pode usar o comando de interrupção unix para interceptar qualquer erro em um script e enviar saída para o growl usando o growlnotify . Eu não estou ciente de qualquer maneira de interceptar a campainha terminal, você tem que interceptar por algum sinal unix específico.
Para ver quais sinais estão disponíveis em seu sistema, digite kill -l
no terminal. O artigo acima ligado no comando unix trap possui uma lista de sinais de traps comuns.
Se você está procurando uma maneira de notificar com a conclusão de um script de terminal de longa duração, aqui está uma solução para dicas do Mac OS X.
Se você quiser apenas redirecionar toda a saída do terminal para o growl, a técnica nas Dicas do Mac OS X pode ser modificada para isso. Coloque isso no seu .profile, .bashrc ou .zshrc. Ele irá redirecionar a saída do seu comando para o growl.
# Before a command execution
preexec() {
export PREEXEC_CMD="Command: $1"
$1 | growlnotify -n "Terminal" ${PREEXEC_CMD:-Some command}
}
Vou deixar como um exercício para o leitor adicionar lógica para redirecionar condicionalmente, dependendo do comando ou de qualquer parâmetro, já que não tenho conhecimento de quais "condições" você está procurando. :)