Se o shell for zsh ou bash (embora não esteja no modo sh ), crie exit a função. As funções têm precedência sobre os recursos internos do shell (mesmo os especiais como exit ) em zsh ou bash (embora não em shells POSIX). Então apenas renomeie sua função para exit e use command exit dentro da função. Caso contrário, você teve recursão sem fim, é claro.