Regular expressions.. Você precisa escapiar o pipe. Obs: você devia usar o text::csv::xs se isso for sério! On Oct 22, 2013 10:32 PM, "Marcio - Google" <[email protected]> wrote:
> Mestres, desculpem a newbieçe, mas to apanhando do split. > > my $line = "T|blablablabla |blabla | mais blabla bla "; > chomp $line; > my @p = split /|/, $line; > print $p[0] . "\n"; > print $p[1] . "\n"; > print $p[2] . "\n"; > print $p[3] . "\n"; > > Minhas colunas são separadas por | e não tem tamanho fixo. > > Não consegui separa-las corretamente. > > > > [...]'s > > Marcio > > ======================================== > ########### Campanha Ajude o Marcio! ########### > http://sosmarcio.blogspot.com.br/ > http://www.vakinha.com.br/VaquinhaP.aspx?e=195793 > ======================================== > > > Em 19 de junho de 2013 12:58, Andre Carneiro < > [email protected]> escreveu: > >> Valeu Lorn! Esse eu não conhecia! >> >> >> Acho que fiquei mal-acostumado aqui na empresa. Os caras só usam coisa >> que tem suporte e normalmente isso implica em lincenças bem caras. >> >> E no caso do splunk realmente, $30000,00 por 20GB/dia de indexação... >> caro ! >> >> >> >> Cheers! >> >> >> >> >> >> >> >> >> >> >> >> 2013/6/19 Nuba Princigalli <[email protected]> >> >>> ** >>> Complementando: nesse espaço, uma alternativa bacana também é o logstash. >>> >>> On Wed, Jun 19, 2013, at 10:08 AM, Lindolfo Lorn Rodrigues wrote: >>> >>> Fala André, blz? >>> O Splunk é bom mesmo, só que muito é caro. >>> Para centralizar logs eu gosto do http://graylog2.org/ >>> Open Source e escala muito bem, outro dia a locaweb revelou que eles >>> recebem/tratam 790.000 mensagens / 5min com o Graylog. >>> >>> E como o graylog-server é compativel com o syslog você pode apontar o >>> syslog das maquinas para ele >>> >>> >>> >>> 2013/6/19 Andre Carneiro <[email protected]> >>> >>> >>> virxi... preciso revisar melhor meus e-mails. Mals... >>> >>> >>> 2013/6/19 Andre Carneiro <[email protected]> >>> >>> >>> Márcio, você já ouviu falar sobre o Splunk? >>> >>> http://www.splunk.com/product >>> >>> >>> O pessoal usa aqui usa bastante. Eu só dei uma olhadinha bem >>> superficial. Você pode criar gráficos de monitoração muito facilmente, pode >>> trabalhar com regex para fazer as análises dos logs, tudo simples, fácil e >>> rápido. Obviamente tem uma curvinha de aprendizado para vencer, mas nada >>> comparado à 'monstrinhos' como o Nagios, por exemplo(fãs de Nagios, me >>> desculpem! É a minha opinião!). >>> >>> O Splunk veio, aparentemente, preencher essa 'lacuna'. >>> >>> >>> Realmente bão ! >>> >>> >>> >>> >>> >>> 2013/6/18 Nilton OS <[email protected]> >>> >>> >>> my $test = '^(... .. ..:..:..) (\S+) \S+ ([a-zA-Z0-9]+): FILTER_LOGX: >>> from=\<(.*?)\> to=\<(.*?)\> subject=\<(.*?)\> size=([0-9]+) hostip=([^ ]*) >>> nrcpt=([0-9]+)'; >>> >>> >>> Testa algo assim: >>> >>> Se usar (\S+) ou \S+ vai começar a ter os resultados >>> >>> Dá uma olhada nesse script. >>> >>> http://pastebin.com/2Mnx9FAY >>> >>> >>> >>> >>> >>> >>> Em 18 de junho de 2013 19:33, Eduardo Verissimo >>> <[email protected]>escreveu: >>> >>> Que tal? >>> >>> ($codigo) =~ /^.*?\|.*?\|.*?\|(.*?)\|/ if /TIM/; >>> >>> Acho que ainda precisa de um ajuste... >>> >>> >>> >>> Em 18 de junho de 2013 19:02, Nilton OS <[email protected]> escreveu: >>> >>> Dá um split no (|) >>> >>> No meu script tem um regex para pegar isso ou qualquer coisa na linha, >>> mas acho que ninguém ligou para minha resposta. >>> >>> >>> Em 18 de junho de 2013 18:34, Marcio - Google <[email protected]>escreveu: >>> >>> >>> Marcio, não. >>> >>> Há duas informações na linha que tem que bater para ela ser >>> selecionada, no exemplo: >>> *|***********************|***** |*D0 C003*| *********************"TIM"* >>> >>> >>> [...]'s >>> >>> Marcio >>> >>> ======================================== >>> ########### Campanha Ajude o Marcio! ########### >>> http://sosmarcio.blogspot.com.br/ >>> http://www.vakinha.com.br/VaquinhaP.aspx?e=195793 >>> ======================================== >>> >>> >>> Em 18 de junho de 2013 16:59, Marcio Ferreira < >>> [email protected]> escreveu: >>> >>> >>> >>> if ( $line =~ /"TIM"/i ){ >>> #faz alguma coisa >>> } >>> >>> não funciona? >>> >>> http://perldoc.perl.org/perlre.html >>> http://sao-paulo.pm.org/artigo/2006/RegexPraticasTecnicasAvancadas >>> http://sao-paulo.pm.org/artigo/2006/ExpressoesRegulares >>> >>> >>> []s, >>> >>> Marcio Ferreira >>> >>> skype: marcio.ferreir4 >>> (21) 8365-7768 >>> >>> >>> 2013/6/18 Marcio - Google <[email protected]> >>> >>> Marcio (xará), >>> >>> Vou tentar com esse módulo. Já to ficando traumatizado com regex, faz >>> tempo que apanho, to começando a achar que seja algum tipo de trauma, >>> bloqueio, sei lá o que ... rsrsrs >>> >>> Giuliani, >>> >>> Obrigado pela dica, vou procurar o livro. >>> >>> Tiago, >>> >>> Vou ler a respeito, obrigado. >>> >>> >>> >>> [...]'s >>> >>> Marcio >>> >>> ======================================== >>> ########### Campanha Ajude o Marcio! ########### >>> http://sosmarcio.blogspot.com.br/ >>> http://www.vakinha.com.br/VaquinhaP.aspx?e=195793 >>> ======================================== >>> >>> >>> Em 18 de junho de 2013 16:44, Marcio - Google <[email protected]>escreveu: >>> >>> >>> Eduardo, >>> >>> O log é isso ai basicamente: >>> T|20/05/2013 08:12:03.391|Modem |D1 C015| RX : OK >>> T|20/05/2013 08:12:04.300|Modem |D0 C003| RX : +CREG: 001,016d,5e13 >>> T|20/05/2013 08:12:04.300|Modem |D0 C003| TX : AT+COPS? >>> T|20/05/2013 08:12:04.333|Modem |D0 C003| RX : +COPS: 000,000,"TIM" >>> T|20/05/2013 08:12:04.333|Modem |D0 C003| RX : OK >>> T|20/05/2013 08:12:04.582|Modem |D0 C001| TX : AT+CSQ >>> T|20/05/2013 08:12:04.582|Modem |D0 C002| TX : AT+CSQ >>> >>> Usando esse pedaço como exemplo, preciso localizar linhas assim: >>> *|***********************|***** |D0 C003| ********************"TIM" >>> >>> Entenda o * como qualquer coisa. Depois do quarto | os dados não tem >>> tamanho fixo, então esse "TIM" poderia estar mais pra frente como mais pra >>> trás. >>> >>> >>> >>> >>> >>> [...]'s >>> >>> Marcio >>> >>> ======================================== >>> ########### Campanha Ajude o Marcio! ########### >>> http://sosmarcio.blogspot.com.br/ >>> http://www.vakinha.com.br/VaquinhaP.aspx?e=195793 >>> ======================================== >>> >>> >>> Em 17 de junho de 2013 21:25, Eduardo Verissimo >>> <[email protected]>escreveu: >>> >>> Márcio, você pode dar um exemplo de qual a string de onde vai tirar a >>> informação e qual informação quer extrair? >>> >>> >>> Em 17 de junho de 2013 19:32, Marcio - Google <[email protected]>escreveu: >>> >>> >>> >>> Valeu pelas dicas e códigos pessoal. >>> Estou usando o File::Tail e parti do código que o Eduardo compartilhou. >>> Só estou apanhando das regex pra encontrar o que quero. Não sei se sou >>> burro, mas tenho uma grande dificuldade de assimilar/entender regex. >>> Vou tentar mais um pouco, se não conseguir jogo a toalha ... rsrsrs >>> >>> >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> >>> -- >>> >>> .............................................................................. >>> *Com Deus todas as coisas são possíveis* ::: >>> LinuxPro<http://www.linuxpro.com.br> >>> >>> *"A qualidade nunca se obtém por acaso; ela é sempre o resultado do >>> esforço inteligente." (John Ruskin)* >>> *"A mente que se abre a uma nova ideia jamais volta ao seu tamanho >>> original" (Albert Einstein)* >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> >>> -- >>> >>> .............................................................................. >>> *Com Deus todas as coisas são possíveis* ::: >>> LinuxPro<http://www.linuxpro.com.br> >>> >>> *"A qualidade nunca se obtém por acaso; ela é sempre o resultado do >>> esforço inteligente." (John Ruskin)* >>> *"A mente que se abre a uma nova ideia jamais volta ao seu tamanho >>> original" (Albert Einstein)* >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> >>> >>> -- >>> André Garcia Carneiro >>> Software Engineer >>> (11)982907780 >>> >>> >>> >>> >>> -- >>> André Garcia Carneiro >>> Software Engineer >>> (11)982907780 >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >>> -- >>> Nuba R. Princigalli [email protected] http://pauleira.com @nprincigalli >>> Discipline is not an end in itself, just a means to an end. - King >>> Crimson >>> >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >> >> >> -- >> André Garcia Carneiro >> Software Engineer >> (11)982907780 >> >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: [email protected] >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer >> >> > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > >
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
