O desligamento gentilmente "fechará" (SIGTERM) todos os aplicativos abertos, dando a oportunidade de finalizar normalmente. Então, depois de um tempo, se o processo não responder, um hard kill (SIGKILL) - não dando tempo para fechar arquivos ou, mais importante, bancos de dados.
Um desligamento é um procedimento autônomo. Não é esperado que responda à entrada do usuário. Por isso, não permitiria que o usuário tivesse a opção de salvar antecipadamente. Esta é a razão pela qual tanto o emacs quanto o vi (m) possuem arquivos de recuperação. Verifique com seus aplicativos se houver um recurso de salvamento automático. Na maioria das vezes, o velho ditado "Salve cedo, salve com frequência" vai.
Você pensou em alterar as configurações de energia para ter o sistema hibernar ? Isso salvará o estado do sistema (incluindo programas em execução) para a próxima partida.