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

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

Re: [shell-script] Problema para pegar um range de caracteres


From: Jose Edson Moreno Jr
Subject: Re: [shell-script] Problema para pegar um range de caracteres
Date: Thu, 17 Mar 2011 12:01:19 -0300

Oi Leonardo,

    Esta estranho ainda o que deseja, mas mesmo assim vou dar algumas
sugestões, você quer pegar uma sequencia de 150 caracteres depois de
uma ocorrencia, bom aqui você não diz se estes 150 são continuos ou
várias linhas, se é só a primeira ocorrencia que voce quer ou qualquer
uma  que tenha a string de ocorrencia .. bom diante disto tentei fazer
algo generico que funcione de todas as formas ;-)

Veja, com este comando supondo que sua ocorrencia seja ### e esteja
dentro do arquivo teste.txt, então:

Para pegar todas as ocorrencias , tendo sempre 150 caracteres depois :

cat teste | tr '\n' '\0' | sed 's/###/\n###/g' | awk -F'###' '{print
substr($2,0,150)}' |  tr '\0' '\n' | sed '/^$/d'

Para pegar somente a  primeira ocorrencia:

cat teste | tr '\n' '\0' | sed 's/###/\n###/g' | awk -F'###' 'NR==2
{printf $2}' | cut -c 1-150  | tr '\0' '\n'

  Bom, não sei se era isto, mas se não for mande detalhes, para que
ajuda seja mais objetiva.

Att.

Edson

Em 16 de março de 2011 15:52, Leonardo Bites
<address@hidden> escreveu:
> Oi Eri o resultado seria string[os150 caracteres depois dela] e só
>
> Em 16 de março de 2011 14:41, Eri Ramos Bastos <address@hidden>escreveu:
>
>>
>>
>> Pode postar um exemplo do arquivo no pastebin assim como o resultado
>> pretendido?
>>
>> []'s
>> Eri Ramos Bastos
>>
>> 2011/3/16 Leonardo Bites <address@hidden>:
>>
>> > Galera alguem poderia me ajudar com um problema que estou tendo
>> > preciso ler um arquivo e apartir de uma determinada ocorrencia pegar
>> > um range dessa ocorrencia até 150 caracteres depois, mas não estou
>> > conseguindo pois tudo que eu acho tem que definir um inico e um fim
>> > duas ocorrencias mas só tenho o inicio.
>> >
>> > estava tentando com algo como esse sed mas não tenho um segundo
>> delimitador
>> >
>> > sed
>> '/primeiro/{/segundo/{s/primeiro.*segundo//;t};:a;/segundo/!{N;s/\n//;ta;};s/primeiro.*segundo/\n/;}'
>> >
>> >
>> >
>> > --
>> > --
>> > Leonardo Bites
>> >
>> > Linux Registered user #449087
>> > ___________________________
>> >
>> > "Open Source for Open Minds"
>> >
>> > "Pensamentos tornam-se ações,
>> >
>> > ações tornam-se hábitos,
>> >
>> > hábitos tornam-se caráter,
>> >
>> > e nosso caráter torna-se nosso destino".
>> >
>> >
>> > ------------------------------------
>> >
>> > ----------------------------------------------------------
>> > 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
>> >
>> >
>> >
>>
>>
>
>
>
> --
> --
> Leonardo Bites
>
> Linux Registered user #449087
> ___________________________
>
> "Open Source for Open Minds"
>
> "Pensamentos tornam-se ações,
>
> ações tornam-se hábitos,
>
> hábitos tornam-se caráter,
>
> e nosso caráter torna-se nosso destino".
>
>
> [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
>
>
>



-- 
Jose Edson Moreno Jr.


reply via email to

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