[Cascavel-pm] Ajuda

Daniel de Oliveira Mantovani daniel.oliveira.mantovani em gmail.com
Segunda Agosto 16 15:46:56 PDT 2010


2010/8/16 Marco Lima <braun.lima em gmail.com>:
> Bom, acho que vc esta enganado, pois o mesmo tem haver com o shell e não com
> o código, se por exemplo eu colocar o código em um arquivo ele ficaria
> apenas:
>
> map{open$x,$_;say if!grep!/0{9}$/,<$x>}<*ERR>

err....
(Do you need to predeclare say?)

No caso do one-liner na shell você "omitiu" o shebang usando parâmetros.
No caso do código acima você teria que fazer,

#perl -E
map{open$x,$_;say if!grep!/0{9}$/,<$x>}<*ERR>

Que conta o "#perl -E", por tanto os parâmetros contam.

>
> Marco Lima
> braun.lima em gmail.com
> im:mago em jabber-br.org
>
> Register Linux User #355235
> Slackware Linux, for the subgenius
>
> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é
> um dever de quem tem."
>
> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta
> paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa
> para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão."
>
> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não
> possa ensinar"
>
>
>
> Em 16 de agosto de 2010 19:20, Daniel de Oliveira Mantovani
> <daniel.oliveira.mantovani em gmail.com> escreveu:
>>
>> 2010/8/16 Marco Lima <braun.lima em gmail.com>:
>> > O que esta fora do '' não é código, portanto não conta!
>>
>> Os parâmetros influenciam no código, por tanto contam sim!
>>
>>
>> >
>> > Marco Lima
>> > braun.lima em gmail.com
>> > im:mago em jabber-br.org
>> >
>> > Register Linux User #355235
>> > Slackware Linux, for the subgenius
>> >
>> > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento
>> > é
>> > um dever de quem tem."
>> >
>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão.
>> > Esta
>> > paixão é, na realidade, uma atividade significativa, inspiradora e
>> > prazerosa
>> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão."
>> >
>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não
>> > possa ensinar"
>> >
>> >
>> >
>> > Em 16 de agosto de 2010 19:08, Daniel de Oliveira Mantovani
>> > <daniel.oliveira.mantovani em gmail.com> escreveu:
>> >>
>> >> 2010/8/16 Marco Lima <braun.lima em gmail.com>:
>> >> > O que foi isso !?!?!?
>> >> >
>> >> >
>> >> > Gabriel:
>> >> >
>> >> > "... quero abrir todos esses arquivos com final ERR .."
>> >> >
>> >> >
>> >> > perl -E 'map{open$x,$_;say if!grep!/0{9}$/,<$x>}<*ERR>'
>> >> >
>> >> > segundo sua contagem seria 54! mas o que se leva em conta é o que
>> >> > esta
>> >> > sendo
>> >> > executado, ou seja entre ' ', portanto 45 !!! =P
>> >>
>> >> Na verdade até aonde eu sei, conta tudo.
>> >>
>> >> >
>> >> > Abraços;
>> >> >
>> >> > Marco Lima
>> >> > braun.lima em gmail.com
>> >> > im:mago em jabber-br.org
>> >> >
>> >> > Register Linux User #355235
>> >> > Slackware Linux, for the subgenius
>> >> >
>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir
>> >> > conhecimento
>> >> > é
>> >> > um dever de quem tem."
>> >> >
>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma
>> >> > paixão.
>> >> > Esta
>> >> > paixão é, na realidade, uma atividade significativa, inspiradora e
>> >> > prazerosa
>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como
>> >> > "diversão."
>> >> >
>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que
>> >> > não
>> >> > possa ensinar"
>> >> >
>> >> >
>> >> >
>> >> > 2010/8/16 Leonardo Ruoso <leonardo.ruoso em gmail.com>
>> >> >>
>> >> >> O jeito força bruta parece ser um foreach no diretório "." para
>> >> >> varrer
>> >> >> os
>> >> >> subdiretórios de cada dia, para cada subdiretório você faz um
>> >> >> readdir
>> >> >> com
>> >> >> uma regex fazendo match em /\d+ERR$/. Daí você abre o arquivo e faz
>> >> >> um
>> >> >> while
>> >> >> no arquivo, até encontrar uma linha com erro, imprime o nome do
>> >> >> arquivo
>> >> >> e
>> >> >> sai do loop do arquivo.
>> >> >>
>> >> >> Abraços!
>> >> >>
>> >> >>
>> >> >> · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
>> >> >> Leonardo Ruoso (CE1921JP)
>> >> >> http://lattes.cnpq.br/2719086566536387 -
>> >> >> http://br.linkedin.com/in/lruoso
>> >> >> leonardo em oktiva.com.br - (85) 8787-0312 - sip:87870312 em ekiga.net
>> >> >> Marketing, Comunicação Social e Tecnologia
>> >> >>
>> >> >> http://norvig.com/21-days.html
>> >> >>
>> >> >>
>> >> >> 2010/8/16 Roan Brasil Monteiro <roanbrasil em gmail.com>
>> >> >>>
>> >> >>> Seguinte,
>> >> >>>
>> >> >>> Imagina que tenho a pasta chamada 201008 e meu script perl está
>> >> >>> nessa
>> >> >>> pasta.
>> >> >>> 201008
>> >> >>>       |_____20100801
>> >> >>>       |_____20100802
>> >> >>>       |_____20100803
>> >> >>>       |_____...
>> >> >>>       |_____script.pl
>> >> >>>
>> >> >>> Dentro de cada pasta existem vários arquivos com nome que eu
>> >> >>> desconheço,
>> >> >>> mas que tem o final -ERR.
>> >> >>> por exemplo
>> >> >>>
>> >> >>> na o pasta 20100801 possui 3 arquivos com nomes XXXXXXXX-ERR
>> >> >>> YYYYYYYY-ERR e ZZZZZZZZ-ERR
>> >> >>>
>> >> >>> quero abrir todos esses arquivos com final ERR e verificar se ao
>> >> >>> final
>> >> >>> de
>> >> >>> CADA LINHA possui 000000000
>> >> >>> se possuir no final de cada linha 000000000, imprimir o nome do
>> >> >>> arquivo
>> >> >>> que tiver todas linhas com 000000000. Se alguma linha, no FINAL
>> >> >>> dela
>> >> >>> tiver
>> >> >>> algum numero onde a sequencia seja diferente de zero não imprimi.
>> >> >>>
>> >> >>> Exemplo.
>> >> >>>
>> >> >>> File XXXXXXX-ERR
>> >> >>> linha 1  teste blabla43 000000000
>> >> >>> linha 2  teste blabla32 000000000
>> >> >>> linha 3  teste blabla12 000000000
>> >> >>> ...
>> >> >>> linha n xxxxxxxxxxx   000000000
>> >> >>>
>> >> >>>
>> >> >>> File YYYYYY-ERR
>> >> >>> linha 1  teste blabla43 000000200
>> >> >>> linha 2  teste blabla32 000000000
>> >> >>> linha 3  teste blabla12 000000000
>> >> >>> ...
>> >> >>> linha n xxxxxxxxxxx   000000000
>> >> >>>
>> >> >>>
>> >> >>> No arquivo XXXXXX todas ultimas colunas são com sequencia zero.
>> >> >>>
>> >> >>> Já o YYYYYY não. Então ira imprimir apenas o nome do arquivo
>> >> >>> XXXXXX-ERR e
>> >> >>> não o YYYYYY-ERR.
>> >> >>>
>> >> >>> Deu para entender?
>> >> >>>
>> >> >>>
>> >> >>> Em 16 de agosto de 2010 12:40, breno <breno em rio.pm.org> escreveu:
>> >> >>>>
>> >> >>>> Roan,
>> >> >>>>
>> >> >>>> também não sei se entendi o que vc tem e/ou quer fazer, mas acho
>> >> >>>> que
>> >> >>>> o
>> >> >>>> Blabos está no caminho certo. Dê uma olhada em:
>> >> >>>>
>> >> >>>> http://perldoc.perl.org/functions/readdir.html
>> >> >>>>
>> >> >>>> E veja se te ajuda, quando muito, a nos dar uma dica sobre qual é
>> >> >>>> exatamente o seu problema em mãos :-)
>> >> >>>>
>> >> >>>> []s
>> >> >>>>
>> >> >>>> -b
>> >> >>>>
>> >> >>>> 2010/8/16 Blabos de Blebe <blabos em gmail.com>:
>> >> >>>> > Nâo entendi o que vc está perguntando.
>> >> >>>> >
>> >> >>>> > Seria algo relacionado a opendir e readdir?
>> >> >>>> >
>> >> >>>> > 2010/8/16 Roan Brasil Monteiro <roanbrasil em gmail.com>:
>> >> >>>> >> Olá pessoal,
>> >> >>>> >>
>> >> >>>> >> Sem utilizar nenhum módulo do CPAN, gostaria de saber se eu
>> >> >>>> >> tenho
>> >> >>>> >> uma
>> >> >>>> >> arvore
>> >> >>>> >> de diretorios baseado em data.
>> >> >>>> >>
>> >> >>>> >> Tenho diretorios que é por dia tipo 20100816, 20100815..
>> >> >>>> >>
>> >> >>>> >> ja fiz um for onde tenho 201008 como default e concatena com um
>> >> >>>> >> contador do
>> >> >>>> >> dia 16 até 1 ai tudo bem.
>> >> >>>> >>
>> >> >>>> >> Gostaria de entrar nesses diretorios e abrir todos arquivos que
>> >> >>>> >> tem
>> >> >>>> >> no final
>> >> >>>> >> -ERR .
>> >> >>>> >>
>> >> >>>> >> Depois disso outra coisa q ja fiz é expressão regular que ja
>> >> >>>> >> fiz
>> >> >>>> >> para
>> >> >>>> >> pegar
>> >> >>>> >> o q tem zero no final do arquivo m/00000000/igo; se sim imprimi
>> >> >>>> >> o
>> >> >>>> >> nome
>> >> >>>> >> odarquivo senão não faz nada.
>> >> >>>> >>
>> >> >>>> >> Obrigado
>> >> >>>> >>
>> >> >>>> >> --
>> >> >>>> >> Atenciosamente,
>> >> >>>> >>
>> >> >>>> >> Roan Brasil Monteiro
>> >> >>>> >> http://roanbrasil.wordpress.com/
>> >> >>>> >> http://www.gramaro.com.br/ - Grama em Tapete Salvador Bahia
>> >> >>>> >>
>> >> >>>> >>
>> >> >>>> >> _______________________________________________
>> >> >>>> >> Cascavel-pm mailing list
>> >> >>>> >> Cascavel-pm em pm.org
>> >> >>>> >> http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >>>> >>
>> >> >>>> > _______________________________________________
>> >> >>>> > Cascavel-pm mailing list
>> >> >>>> > Cascavel-pm em pm.org
>> >> >>>> > http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >>>> >
>> >> >>>> _______________________________________________
>> >> >>>> Cascavel-pm mailing list
>> >> >>>> Cascavel-pm em pm.org
>> >> >>>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> --
>> >> >>> Atenciosamente,
>> >> >>>
>> >> >>> Roan Brasil Monteiro
>> >> >>> http://roanbrasil.wordpress.com/
>> >> >>> http://www.gramaro.com.br/ - Grama em Tapete Salvador Bahia
>> >> >>>
>> >> >>>
>> >> >>> _______________________________________________
>> >> >>> Cascavel-pm mailing list
>> >> >>> Cascavel-pm em pm.org
>> >> >>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >>
>> >> >>
>> >> >> _______________________________________________
>> >> >> Cascavel-pm mailing list
>> >> >> Cascavel-pm em pm.org
>> >> >> http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > Cascavel-pm mailing list
>> >> > Cascavel-pm em pm.org
>> >> > http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> http://www.danielmantovani.com
>> >>
>> >> "If you’ve never written anything thoughtful, then you’ve never had
>> >> any difficult, important, or interesting thoughts. That’s the secret:
>> >> people who don’t write, are people who don’t think."
>> >> _______________________________________________
>> >> Cascavel-pm mailing list
>> >> Cascavel-pm em pm.org
>> >> http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >
>> >
>> > _______________________________________________
>> > Cascavel-pm mailing list
>> > Cascavel-pm em pm.org
>> > http://mail.pm.org/mailman/listinfo/cascavel-pm
>> >
>>
>>
>>
>> --
>> http://www.danielmantovani.com
>>
>> "If you’ve never written anything thoughtful, then you’ve never had
>> any difficult, important, or interesting thoughts. That’s the secret:
>> people who don’t write, are people who don’t think."
>> _______________________________________________
>> Cascavel-pm mailing list
>> Cascavel-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>



-- 
http://www.danielmantovani.com

"If you’ve never written anything thoughtful, then you’ve never had
any difficult, important, or interesting thoughts. That’s the secret:
people who don’t write, are people who don’t think."


Mais detalhes sobre a lista de discussão Cascavel-pm