Eu quero que para um determinado número de inicializações do sistema (digamos, 1 ou 2 inicializações do sistema), uma mensagem apareça.
Vou armazenar a mensagem em algum lugar, talvez em uma variável:
message='If you finished testing, make sure to remove the testing application.'!'
Notas:
Eu uso o servidor Ubuntu 16.04 e busco uma solução para sistemas sem GUI.
O objetivo do código é ter uma boa maneira de me lembrar de uma determinada tarefa, se, por algum motivo, não lembrei que é um bom momento para fazê-lo.
Presumo que devo armazenar a variável em algum lugar "mais profundo" que a RAM, talvez em um arquivo que criarei para ela, talvez outro método. Não tenho certeza.
Cron não é bom porque é repetitivo e não para um determinado número de execuções.
Isso é bom no caso de você
reboot
desligar / faltar energia --- você recebe um lembrete para uma tarefa importante.
Esclarecimento
Tentei descrever um caso em que um usuário liga a máquina e, no momento em que o prompt principal aparece, junto com ele, aparecerá a mensagem que mencionei.
IMHO não faz sentido fazê-lo "na inicialização" se não houver ninguém para vê-lo, então é melhor fazer parte do seu login ... Você pode chamar um script do seu arquivo
~/.profile
. O script pode verificar se 1) o aplicativo de teste ainda está lá e 2) se passou algum atraso desde o último aviso (por exemplo, verificando o registro de data e hora de algum arquivo em /var/tmp), caso em que ele avisa novamente (e toque no arquivo do marcador).Com esse script "não me incomode com muita frequência", você pode executá-lo sempre que o bash retornar ao prompt de comando, colocando-o na variável PROMPT_COMMAND do bash.
Dependendo do seu sistema, você pode usar cron's
@reboot
No entanto, um arquivo de serviço systemd é provavelmente um método mais estável.
Então:
Conforme sugerido nos comentários: Este arquivo de serviço ... ou algo parecido ... e ...
Este roteiro:
Ou algo parecido. Existem provavelmente 15 maneiras de resolver esse problema e 100 maneiras de escrever esse script.