Em vez de executar um comando no terminal, é possível executá-lo na barra de menu em segundo plano?
Para manter o firewall aberto na rede em que estou, costumo executar curl
ping em uma URL a cada 5 minutos, usandowatch
no Terminal, mas isso significa que preciso deixar o Terminal aberto o tempo todo. É possível 'enviar' isso para a barra de menu?
Responder1
Não facilmente. Para criar ummenulet- Presumo que seja isso que você quer dizer com executá-lo na barra de menu - você precisaria escreveralgum código de sua autoria. Dependendo da sua habilidade de programação e de quanto esforço você deseja investir, isso pode ou não ser uma solução.
Alternativamente, você pode minimizar a janela do terminal para o dock. Dependendo de quão visível você deseja que a saída seja, você também pode executar o comando em segundo plano comtelaou então. Se você está procurando uma mudança óbvia, você pode usar um script que reconheça isso e use algo comorosnarnotificarpara contar a você sobre isso.
Responder2
Não é a resposta para sua pergunta, mas provavelmente para o seu problema:
Usar screen
. Dessa forma, você pode sair do Terminal e seus processos continuarão em execução.
Ctrl-A Ctrl-C
(criar) cria novas "telas" ("guias"/"janelas"), Ctrl-A Crtl-N
(próximo) e Ctrl-A Ctrl-P
(anterior) percorre-as. Ctrl-A Ctrl-D
(desanexar) sai da tela.
screen -r
para reconectar a uma sessão de tela anterior e verificar a saída.
Responder3
Não sei por que você precisa disso na barra de menu?
A seguir está um script que fará um loop e atingirá algum URL curl no loop. Você precisa executá-lo no terminal, mas pode fechar o terminal depois disso.
#!/bin/bash
URL=http://some.site/
LOOPTIME=280 # just under 5 minutes
(while true;
do curl -I -s -o /dev/null $URL > /dev/null;
done) &
disown
Eu incluí -I para usar apenas HEAD, para economizar a sua largura de banda e a do servidor