Você pode usar o script bash-preexec do rcaloras para executar comandos pré-executados sempre que o usuário executar algo do bash. Se o usuário inserir qualquer outro shell / aplicativo, seu script pré-execução será executado primeiro e poderá executar seus próprios manipuladores. Para saber quando o usuário sai desse programa, uma solução potencial seria fazer com que seu script continue pesquisando em segundo plano para ver se o pid ainda existe.