Eu acho que o assunto é bastante pertinente. Opessoal que usa shell normalmente é admin e isso é um assunto interessante para qq admin que mereça esse nome.
Eu tentaria uma coisa totalmente diferente, pois acho que compromete menos o processador. Seguinte: Script1 ======= mkfifo tubo tail -f <(ls) > tubo O processo do tail permanece em waiting enquanto não se cria arquivo e qdo criá-lo ele será enviado para o named pipe. Script2 ======= while : do ArqNovo=$(cat tubo) .... .... done O named pipe precisa de um cara falando e outro ouvindo. Esse cat tubo ligará um semáforo do S.O. e ficará esperando (sem onerar absolutamente nada) a mudança deste semáforo que se dará qdo o outro processo "falar" do outro lado do tubo e o que ele falou irá para a variável ArqNovo para que vc possa trabalhar o dado da forma que vc quiser. Se enquanto o script2 estiver trabalhando o dado, for criado um novo arquivo, o script1 ficará em waiting até que termine o ciclo do while e o prg volte para o cat. Cara dê uma olhada em www.julioneves.com. Acho que a parte referente a named pipe e substituição de processo [<(ls)] estão no Papo de Botequim 11. Lá tá tudo mastigado e cheio de exemplos. Abraços, Julio Cursos de Shell e Zenity em 2 fins de semana? - SE turma de Shell/Zenity em 26/07 - clemis...@gmail.com - SP turma de Shell em 14/08 - www.4Linux.com.br - Turmas fechadas em outras cidades ligue (21)8112-9988. Em 28 de julho de 2010 12:43, Cristiano <boxferr...@gmail.com> escreveu: > > > > > --- Em shell-script@yahoogrupos.com.br <shell-script%40yahoogrupos.com.br>, > Thiago Diniz da Silveira <thiagods...@...> escreveu > > > > > Pela minha lógica ao deixar como daemon.. ele vai estar consumindo > memória e > > processamento o tempo todo. > > Acho que a cron já está lá justamente para isso, só ela consome memória e > > processamento menor do que se todos os scripts estivessem rodando como um > > daemon, imagina 5 scripts rodando um sleep cada, e apenas um script só no > > caso a cron rodando um time e verificando para cada script "cadastrado" > em > > sua lista a hora de rodar? aparentemente consome menos recursos, creio eu > > que fique melhor usando a cron. > > > > Acho que só vale a pena deixar como daemon se for algo que precise > realmente > > estar funcionando o tempo todo, como um servidor de dns, web ou firewall. > > > > Thiago, na realidade, a dúvida é mais conceitual que técnica. > > Não sei o que o bash (ou seria o kernel) com o script quando recebe o > sleep, em termos de processador e memória. > > A questão que me pôs em dúvida é o que "custa" mais para o hardware, em um > período de 24 horas. Executar via cron, de minuto em minuto, implica em > rodar o mesmo script 1.440 vezes. Há portanto, 1.440 operações de I/O (o > cron tem que acessar o disco 1.440 vezes a mais apenas para ler o código > fonte, gerenciar memória - alocando e desalocando - 1.440 vezes). Já no > daemon, haveria apenas 1 operação de I/O. Já que o código é pequeno (menos > de 100 linhas), pouca memória estaria em uso e o I/O somente seria > necessário quando o loop gira. > > Mas minha dúvida é justamente à respeito do sleep. Qual o ônus dele para a > memória e o processador. Sai mais "barato" para as 1.440 execuções (com seus > acessos a disco e operações de memória), ou mandar o programa 'dormir' por > 1.440 vezes? > > Supondo que a execução dele dure 5 segundos. O que ocorre com o processador > e memória nos outros 55 em que o comando sleep está rodando? > > Outra dúvida é à respeito do cron. Faz diferença para a máquina o fato de > ter uma tarefa agendada de minuto (não o custo da execução da tarefa, mas a > da verificação das tarefas à executar)? > > Virou off ou ainda é shell? > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ --------------------------------------------------------------------- Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. --------------------------------------------------------------------- Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br --------------------------------------------------------------------- Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net --------------------------------------------------------------------- Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: shell-script-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html