shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Erro no grep ?


From: Robson Alexandre
Subject: Re: [shell-script] Erro no grep ?
Date: Thu, 1 Mar 2012 13:53:22 -0300

grep -nr caractproduct /caminho/*
não funciona?

Atenciosamente
Robson Alexandre

Enviado por Samsung Mobile
Em 01/03/2012 11:59, "Valtoir" <address@hidden> escreveu:

> Só por curiosidade, e um
>
> grep  caractproduto *.sql
>
> Também apresenta performance ruim?
>
> Valtoir
>
> Em 1 de março de 2012 11:45, Emerson Domingues Souto - H2M <
> address@hidden> escreveu:
>
> > **
> >
> >
> > Procurei no gloogle e um montão de gente já passou pelo mesmo problema
> que
> > eu.
> >
> > Achei um cara que tentou resolver substituindo o "grep" por "perl":
> >
> >
> >
> http://unix.ittoolbox.com/groups/technical-functional/ibm-aix-l/circumventing-grep-when-reaching-the-2048-char-line-limit-244679
> >
> >
> > Emerson Domingues Souto
> >
> > Tecnologia da Informação
> >
> > Marítima Seguros S/A
> >
> > De: address@hidden [mailto:
> > address@hidden] Em nome de Emerson Domingues Souto -
> H2M
> > Enviada em: quinta-feira, 1 de março de 2012 11:07
> > Para: address@hidden
> > Assunto: RES: [shell-script] Erro no grep ?
> >
> >
> > Tentei xargs -n 1, xargs -L1, xargs -s2000, por enquanto todos trouxeram
> a
> > mesma mensagem de aviso:
> >
> > # ls | xargs -n 1 grep -li caractproduto
> > grep: 0652-226 Maximum line length of 2048 exceeded.
> > grep: 0652-226 Maximum line length of 2048 exceeded.
> > grep: 0652-226 Maximum line length of 2048 exceeded.
> > grep: 0652-226 Maximum line length of 2048 exceeded.
> > afpp01.sql
> > avcp00.sql
> >
> > Emerson Domingues Souto
> > Tecnologia da Informação
> > Marítima Seguros S/A
> >
> > > -----Mensagem original-----
> > > De: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br> [mailto:shell-
> > > address@hidden <mailto:script%40yahoogrupos.com.br> ] Em
> > nome de Tiago Peczenyj
> >
> > > Enviada em: quinta-feira, 1 de março de 2012 11:03
> > > Para: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br>
> >  > Assunto: Re: [shell-script] Erro no grep ?
> > >
> > > o tr vai separar em linhas , porém elas vão ser juntas ate o numero
> > maximo
> > > de argumentos que o shell suporta pelo xargs. se vc quer executar 1 por
> > linha
> > > teria que fazer algo como xargs -n 1
> > >
> > > 2012/3/1 Emerson Domingues Souto - H2M
> > > <address@hidden <mailto:emersons.h2m%40maritima.com.br>
> >
> >
> > >
> > > > **
> > > >
> > > >
> > > > Funciona, só que acabei de perceber que se colocar um "xargs" após o
> > "tr"
> > > > ele (o "tr") fica obsoleto:
> > > >
> > > >
> > > > # ls | xargs echo | tr -s ' ' '\n'
> > > > VERSOES
> > > > aaast00.sql
> > > > aaast01.sql
> > > > aaast02.sql
> > > > aac00.sql
> > > > ......
> > > >
> > > > # ls | xargs echo | tr -s ' ' '\n' | xargs echo VERSOES aaast00.sql
> > > > aaast01.sql aaast02.sql aac00.sql aace00.sql aacp00.sql aacs00.sql
> > > > aact00.sql aaf00.sql aafc00.sql aagr00.sql aagr01.sql aagr02.sql
> > > > aagr03.sql aagr04.sql aagr05.sql aagrlreg00.sql aagrrg00.sql
> > > > aagrrg01.sql aagrrg02.sql aagvco00.sql aap00.sql aapr00.sql
> > > > aarnv01.sql aarnv02.sql aarnv03.sql aarnv04.sql aarnv05.sql
> > > > aarnv06.sql aarnv98.sql aarnv99.sql aasn00.sql aast00.sql aat00.sql
> > > > aatp00.sql aauppsrcr00.sql aba00.sql abci00.sql abco00.sql
> > > > abcoag00.sql abcoc00.sql abconn00.sql abconn01.sql abconn02.sql
> > > > abi00.sql abn00.sql aca00.sql acag00.sql acagr00.sql acap00.sql
> > > > acarq00.sql acbc00.sql acbc10.sql acbs00.sql acc00.sql accb00.sql
> > > > accco00.sql accp00.sql accr00.sql acd00.sql acd01.sql acd02.sql
> > > > acea00.sql acea01.sql acea02.sql acec00.sql acee00.sql acer00.sql
> > > > acers00.sql acerto_junior.sql acesp00.sql acessodb2p.sql acfd00.sql
> > > > acfd01.sql acfd02.sql acfn00.sql acfp00.sql acgcp00.sql acgp00.sql
> > > > acgr00.sql achlcto00.sql aci00.sql aci01.sql acipc00.sql acis00.sql
> > > > acj00.sql acl00.sql aclac00.sql aclc00.sql aclcto00.sql aclcto10.sql
> > acli00.sql
> > > acli01.sql acli02.sql acli10.sql ......
> > > >
> > > >
> > > > Emerson Domingues Souto
> > > > Tecnologia da Informação
> > > > Marítima Seguros S/A
> > > >
> > > > > -----Mensagem original-----
> > > > > De: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br> [mailto:shell-
> > > > > address@hidden <mailto:script%40yahoogrupos.com.br> ]
> Em
> > nome de Tiago Peczenyj Enviada em:
> >
> > > > > quinta-feira, 1 de março de 2012 10:50
> > > >
> > > > > Para: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br>
> >  > > > Assunto: Re: [shell-script] Erro no grep ?
> > > > >
> > > > > Emerson
> > > > >
> > > > > a linha abaixo
> > > > >
> > > > > $ ls | xargs ...
> > > > >
> > > > > não funciona?
> > > > >
> > > > > 2012/3/1 Emerson Domingues Souto - H2M
> > > > > <address@hidden <mailto:
> emersons.h2m%40maritima.com.br>
> > >
> >
> > > > >
> > > > > > **
> > > >
> > > > > >
> > > > > >
> > > > > > Tiago,
> > > > > >
> > > > > > Estou usando o "ls" no lugar do "find" porque a pesquisa não pode
> > > > > > se aprofundar nos subdiretórios e porque o utilitário "find"
> > > > > > instalado nessa versão do Unix (AIX 4) não aceita os argumentos
> > > > > > "-prune" e "-maxdepth", portanto a solução foi usar o "ls" ....
> > > > > > por enquanto ainda não achei outro jeito rsrsrs
> > > > > >
> > > > > > O "tr" foi uma tentativa de mostrar em 1 nome de arquivo por
> > > > > > linha, sem isso o resultado é uma linha gigantesca com os mais de
> > > > > > 5000 arquivos concatenados e separados por espaço em branco.
> > > > > >
> > > > > > Já havia colocado antes um "echo" na frente do "xargs" e tá ok.
> > > > > >
> > > > > > O problema é que o "grep" tá mostrando essa mensagem de aviso,
> mas
> > > > > > funciona perfeitamente, eu queria entender melhor o que está
> > > > > > ocorrendo
> > > > > ....
> > > > > > o porquê da mensagem? se corre algum risco do resultado estar
> > > errado?
> > > > > > se tem algum substituto pro "grep -li" como o "awk" por exemplo ?
> > > > > > etc
> > > > > >
> > > > > > O Petterson já me deu uma boa dica, pois pelo que eu entendi, o
> > > "grep"
> > > > > > está sendo executado em uma linha de comando superior a 2048
> > > > > > bytes, ou seja, apesar de eu ter usado o "tr" pra que o resultado
> > > > > > fosse 1 arquivo por linha, na hora de executar o "grep" juntou
> > > > > > tudo. Isso eu ainda não entendi o porquê
> > > > > >
> > > > > >
> > > > > > Emerson Domingues Souto
> > > > > > Tecnologia da Informação
> > > > > > Marítima Seguros S/A
> > > > > >
> > > > > > > -----Mensagem original-----
> > > > > > > De: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br> [mailto:shell-
> > > > > > > address@hidden <mailto:script%40yahoogrupos.com.br>
> > ] Em nome de Tiago Peczenyj Enviada
> >
> > > em:
> > > > > > > quinta-feira, 1 de março de 2012 09:39
> > > > > > > Para: address@hidden <mailto:
> > shell-script%40yahoogrupos.com.br>
> >  > > > > > Assunto: Re: [shell-script] Erro no grep ?
> > > > > >
> > > > > > >
> > > > > > > Ola
> > > > > > >
> > > > > > > qual é a razão para vc fazer
> > > > > > >
> > > > > > > ls | xargs echo | tr ?
> > > > > > >
> > > > > > > se vc quer fazer um grep em todos estes arquivos eu indico
> fazer
> > > > > > >
> > > > > > > find -type f | xargs grep -li caractproduto
> > > > > > >
> > > > > > > ou
> > > > > > >
> > > > > > > find -type f -exec grep -li caractproduto {} \+
> > > > > > >
> > > > > > > agora se vc tem arquivos que possuam o nome com espaço em
> > > branco
> > > > > > > vc pode fazerm na primeira linha
> > > > > > >
> > > > > > > find ... -print0 | xargs -0 ...
> > > > > > >
> > > > > > > provavelmente vc montou uma linha esquisita para o xargs e o
> > > > > > > grep não entendeu. sugestão: coloque um echo na frente do grep
> e
> > > > > > > veja o que ele esta tentando fazer.
> > > > > > >
> > > > > > > 2012/3/1 Emerson Domingues Souto - H2M
> > > > > > > <address@hidden <mailto:
> > emersons.h2m%40maritima.com.br> >
> >
> > > > > > >
> > > > > > > > **
> > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Bom dia!
> > > > > > > >
> > > > > > > > Estou executando um grep numa lista de mais de 5000 arquivos,
> > > > > > > > mas tá ocorrendo o erro abaixo.
> > > > > > > >
> > > > > > > > Alguem sabe explicar o porquê ? Será que o erro é por causa
> do
> > > > > > > > número de arquivos ?
> > > > > > > >
> > > > > > > > # ls | xargs echo | tr -s ' ' '\n' | xargs grep -li
> > > > > > > > caractproduto
> > > > > > > >
> > > > > > > > grep: 0652-226 Maximum line length of 2048 exceeded.
> > > > > > > >
> > > > > > > > grep: 0652-226 Maximum line length of 2048 exceeded.
> > > > > > > >
> > > > > > > > grep: 0652-226 Maximum line length of 2048 exceeded.
> > > > > > > >
> > > > > > > > grep: 0652-226 Maximum line length of 2048 exceeded.
> > > > > > > >
> > > > > > > > afpp01.sql
> > > > > > > >
> > > > > > > > avcp00.sql
> > > > > > > >
> > > > > > > > Emerson Domingues Souto
> > > > > > > >
> > > > > > > > Tecnologia da Informação
> > > > > > > >
> > > > > > > > Marítima Seguros S/A
> > > > > > > >
> > > > > > > > [As partes desta mensagem que não continham texto foram
> > > > > removidas]
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Tiago B. Peczenyj
> > > > > > > Linux User #405772
> > > > > > >
> > > > > > > http://pacman.blog.br
> > > > > > >
> > > > > > >
> > > > > > > [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: address@hidden
> <mailto:
> > shell-script-unsubscribe%40yahoogrupos.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
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Tiago B. Peczenyj
> > > > > Linux User #405772
> > > > >
> > > > > http://pacman.blog.br
> > > > >
> > > > >
> > > > > [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: address@hidden<mailto:
> > shell-script-unsubscribe%40yahoogrupos.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
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Tiago B. Peczenyj
> > > Linux User #405772
> > >
> > > http://pacman.blog.br
> > >
> > >
> > > [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: address@hidden <mailto:
> > shell-script-unsubscribe%40yahoogrupos.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
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
> [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: address@hidden
> ---------------------------------------------------------------------
> 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
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]