Exemplo de uso:
Gostaria de iniciar o Telegram Desktop periodicamente a cada 3 horas por 15 minutos, para verificar se há novas mensagens recebidas. Após 15 minutos, o aplicativo deve fechar novamente e reiniciar após as próximas 3 horas.
command-line
software-recommendation
schedule
orschiro
fonte
fonte
cron
você pode iniciar claramente os programas. Você também pode programar um cronkill -15
, mas depende do aplicativo se ele o manipula como uma cutucada suave para desligar, ignorar ou travar.Respostas:
Script Cron versus Background
É claro que a primeira coisa que surge na mente é usar
cron
. Se você usa cron ou um pequeno script em segundo plano, é principalmente uma questão de gosto.A vantagem do cron é que ele se conecta a um processo existente (embora um script adicione, na verdade, nada à carga do processador).
A vantagem de um script em segundo plano é que é mais flexível; basta matá-lo e executá-lo com outros argumentos, se desejar alterar o tempo ou outras configurações. Você também pode reutilizá-lo com outros aplicativos sem precisar fazer outra configuração, apenas um comando é suficiente.
O script abaixo pode ser executado pelo comando (por exemplo)
Onde o último argumento, se definido, mata forçosamente o aplicativo. Se não estiver definido, o aplicativo será fechado normalmente, para garantir que possíveis alterações etc. não sejam perdidas.
O script
Usar
cycle_run.py
Execute-o com o comando:
Onde:
<command>
é o comando para executar o aplicativo (sem o--%u
-section, no meu caso, copiado do.desktop
arquivo:/home/jacob/Downloads/Telegram/Telegram
)<cycle_time>
é o tempo (total) do ciclo em minutos (3 horas = 180 no seu exemplo)<application_run_time>
é o tempo em que o aplicativo deve ser executado em minutos (15 no seu exemplo)force
é um argumento opcional, para matar com força o aplicativo. Simplesmente deixe-o para matar graciosamente o aplicativo.Executando aplicativos com argumentos
Se você executar um aplicativo com argumentos, use aspas ao redor do comando para executar o aplicativo , por exemplo:
Aplicativos em execução minimizados ou na bandeja
Iniciar e encerrar aplicativos periodicamente geralmente será necessário apenas minimizado e / ou na bandeja. Conforme solicitado pelo OP, algumas observações sobre isso:
Se um aplicativo oferecer inicialização na bandeja a partir da linha de comando, basta usar o argumento para fazer isso. No caso de
Telgram
, o argumento a ser usado é:embora a opção pareça não funcionar em todos os sistemas (funciona no meu), conforme mencionado aqui . Você terá que testar sua situação.
Se o aplicativo não oferecer a opção de linha de comando para inicialização minimizada ou na bandeja, sugiro usar o script (this) em combinação com o script aqui (sugiro a
pid
versão -), o que tornará possível a inicialização o aplicativo minimizado.fonte
Edite seu cron com
crontab -e
e adicione esta linha ao seu crontab para executá-lo como tarefa de agendamento a cada 3 horas2. Abra seu terminal e digite o comando abaixo
abra killtelegram.sh com seu editor favorito e escreva como abaixo
Salvar e sair
é isso aí. Ele será aberto automaticamente a cada 3 horas e permanecerá por 15 minutos e será morto.
fonte