Script para permitir que o usuário cancele um logout do shell

2

Eu quero escrever um script para exibir uma mensagem e possivelmente cancelar um logout de um shell interativo. Isso ocorre porque geralmente executo trabalhos em segundo plano em alguns dos meus shells e no impulso do momento em que saio de tudo, fechando os trabalhos em execução. O que eu estou depois é um script como:

# If there are running jobs
if [ -z "$(jobs)" ]; then
    # Display messages, give choices, etc.
    ...code...
    # And finally, given some conditions (e.g. answers to questions, etc.)
    cancel_logout
else
    logout

Presumivelmente, o texto acima iria para ~/.bash_logout .

    
por Wojtek Rzepala 19.03.2012 / 22:00

1 resposta

6

A maneira correta de fazer isso é fazer o bash executar a verificação em si

shopt -s checkjobs

Isso fará com que o bash mostre um aviso se algum trabalho continuar em execução. Se houver trabalhos em execução, você deve tentar sair duas vezes para sair.

    
por 19.03.2012 / 22:17

Tags