Echo alguma coisa em segundo plano, mas veja se reinicializou ou teve um corte de energia?

1

Eu uso o servidor Ubutu 16.04 e desejo repetir algo em primeiro plano, dois dias à frente, com o sono em segundo plano.

Eu assumo que o código que eu preciso é similar ao código abaixo (que faz as duas ações em segundo plano):

(sleep 2d; echo "Surprise!") &

O problema

O problema é, na verdade, composto pelos problemas:

  1. Não tenho ideia de como fazer o sono em segundo plano, mas o eco adjacente em primeiro plano.

  2. Mesmo que o número 1 seja possível, se eu mantiver meu computador aberto, ele aparecerá no meu stdout (do shell básico), após 2 dias, mas e se entre a execução e a renderização do stdout, eu reiniciei meu sistema, ou teve um corte de energia ... Se eu não estiver errado, estes irão apagar o sono eo eco da memória e eu não poderia apreciar a generosidade de sua combinação.

A questão

Existe uma maneira de fazer uma declaração ecoar no stdout do meu shell básico (o console com o qual eu inicio depois de init ) mesmo se houver um corte de reinicialização / energia entre eles?

Em outras palavras, eu só quero fazer um lembrete "Faça isso, faça isso" depois de 2 dias, independentemente de reboot ou de qualquer inicialização do meu sistema.

    
por Arcticooling 04.12.2017 / 13:04

1 resposta

0

Use at para agendar o trabalho e wall para transmitir a mensagem a todos os usuários conectados:

$ echo 'echo some message |wall' | at "now +5 min"
warning: commands will be executed using /bin/sh
job 6 at Tue Dec  5 00:52:00 2017

[cinco minutos depois]

Broadcast message from [email protected] (somewhere) (Tue Dec  5 00:52:00 2017):

some message
    
por 04.12.2017 / 23:53