<div dir="ltr"><div><div><div><div><div>Olá Marcio,<br><br>De uma olhada nessas dists/módulos (de acordo com os seus itens):<br><br>1) <a href="https://metacpan.org/module/Log::Log4perl">https://metacpan.org/module/Log::Log4perl</a><br>

<br>2) <a href="https://metacpan.org/module/Config::Tiny">https://metacpan.org/module/Config::Tiny</a><br><br>3) <a href="https://metacpan.org/module/Getopt::Long">https://metacpan.org/module/Getopt::Long</a><br><br></div>

E se você estiver de fato fazendo muitos scripts/apps de linha de comando, talvez queira dar uma olhada nesses aqui também:<br><a href="https://metacpan.org/module/App::Rad">https://metacpan.org/module/App::Rad</a><br><a href="https://metacpan.org/module/App::Cmd">https://metacpan.org/module/App::Cmd</a><br>

<br></div>4) Isso vai mais de como você faz a comunicação entre processos na sua arquitetura... você pode usar arquivos, um banco de dados como backend, um sistema de fila de mensagens dos trocentos que existem, pipes, passagem de mensagem, ... Recomendo que você busque e leia um pouco sobre esse assunto - comunicação entre processos - e decidir como você gostaria de começar tentando, daí com certeza o pessoal da lista poderá te indicar módulos de forma mais útil :-)<br>

<br></div>Sobre achar mais de uma solução: TIMTOWTDI :D<br><br></div>[ ]'s<br></div>Buss<br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/7/31 Marcio - Google <span dir="ltr"><<a href="mailto:marciorp@gmail.com" target="_blank">marciorp@gmail.com</a>></span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:arial,helvetica,sans-serif">Salve Mongers!</div><div style="font-family:arial,helvetica,sans-serif">

<br></div><div style="font-family:arial,helvetica,sans-serif">
Estou re-escrevendo vários scripts em bash e mesmo alguns em Perl, e gostaria de fazer da forma certa ou seguindo as melhores práticas. Então tenho três dúvidas:</div><div style="font-family:arial,helvetica,sans-serif">
<br></div><div style="font-family:arial,helvetica,sans-serif">1. Nos scripts bash eu uso o logger para gravar as informações de log, pois o syslog se encarrega das estratégias de arquivamento, compactação, envio de e-mail, etc. Em Perl qual a melhor maneira de interagir com o syslog? Ou devo usar outra estratégia de log?</div>


<div style="font-family:arial,helvetica,sans-serif"><br></div><div style="font-family:arial,helvetica,sans-serif">2. Preciso de arquivos de configuração, para guardar IPs, caminhos, portas, etc. Hoje tenho um arquivo texto que gravo pares dado=valor, um por linha, e faço a leitura na mão. Como devo fazer em Perl e qual o melhor formato? As vezes tenho que gravar dados sensíveis, como senhas.</div>


<div style="font-family:arial,helvetica,sans-serif"><br></div><div style="font-family:arial,helvetica,sans-serif">3. Os parâmetros são uma pedra no sapato. Hoje meus scripts (Bash e Perl) tem uma ordem que os parâmetro  devem ser passado, e se não for passar algum parâmetro tenho que colocar no lugar um par "" e dentro do script ler um por um fazendo os tratamentos com intermináveis "IFs". Gostaria de usar parâmetros como o próprio Perl, tipo -<letra ou nome do parâmetro><valor do parâmetro>, sem me preocupar com ordem. Como fazer? Módulo, técnica ...</div>


<div style="font-family:arial,helvetica,sans-serif"><br></div><div style="font-family:arial,helvetica,sans-serif">4. Tenho um script que é executado na inicialização do OS, e como ainda não sei direito lidar com daemons, uso o nohup. Esse script fica lendo uma série de informações de vários locais, e conforme as regras ele chama outros scripts, e até mesmo um script único, mas várias vezes. Só que as vezes tenho que trocar informações entre esses scripts, tenho que enviar informações do Pai pro Filho e vice-versa. Hoje faço isso por arquivos, o que é um s*c* e está sujeito a erros. Essas informações são sempre cadeias de caracteres, p.e., a7f93j5.</div>


<div style="font-family:arial,helvetica,sans-serif">Pra ficar mais fácil de entender, vou exemplificar:</div><div style="font-family:arial,helvetica,sans-serif">4.1. O pai chama um filho e passa por parâmetro o canal que ele deve usar, mas em um determinado momento o pai precisa que o filho mude de canal.</div>


<div style="font-family:arial,helvetica,sans-serif">4.2. O filho está recebendo mais erros que o normal no processo e precisa avisar o pai.</div><div style="font-family:arial,helvetica,sans-serif">
4.3. O pai precisa que o filho pare o processamento por um determinado tempo ou até que receba outra instrução, mas sem encerrar, só fique parado, tipo while (1) {}.</div><div style="font-family:arial,helvetica,sans-serif">


4.4. O pai precisa que o filho conclua o processo atual e encerre, salvando os dados.</div><div style="font-family:arial,helvetica,sans-serif">4.5. O pai precisa saber se o filho está trabalhando e não está travado ou caiu.</div>


<div style="font-family:arial,helvetica,sans-serif">4.6. O filho precisa avisar o pai que concluiu o lote e está parando.</div><div style="font-family:arial,helvetica,sans-serif">
Essas são algumas das situações.</div><div style="font-family:arial,helvetica,sans-serif"><br></div><div style="font-family:arial,helvetica,sans-serif">Estou a alguns dias pesquisando no Dr. Google, mas sempre acho mais de uma solução para a mesma questão. Gostaria da melhor, mais simples, mais prática.</div>


<div style="font-family:arial,helvetica,sans-serif"><br></div><div><div dir="ltr"><br>[...]'s<br><br>Marcio<div><br></div><div><div style="font-family:arial;font-size:small">========================================</div>


<div style="font-family:arial;font-size:small">########### Campanha Ajude o Marcio! ###########</div><div style="font-family:arial;font-size:small"><a href="http://sosmarcio.blogspot.com.br/" style="color:rgb(17,85,204)" target="_blank">http://sosmarcio.blogspot.com.br/</a></div>


<div style="font-family:arial;font-size:small"><a href="http://www.vakinha.com.br/VaquinhaP.aspx?e=195793" style="color:rgb(17,85,204)" target="_blank">http://www.vakinha.com.br/VaquinhaP.aspx?e=195793</a><br></div><div style="font-family:arial;font-size:small">


========================================</div></div></div></div>
</div>
<br>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div></div></div>