exec false
está substituindo o shell atual pela execução do comando interno false
que sai rapidamente. Se o shell foi o processo mais avançado em execução no emulador de terminal, não há mais processos sendo executados dentro dele para que o emulador de terminal seja fechado.
Esta é uma maneira alternativa aceitável de fechar um terminal, assim como muitos comandos semelhantes:
exec true
exec sleep 0
exec exit
...