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

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

Re: [shell-script] Dificuldades com expressões regulares


From: Paulo Soares Drumond
Subject: Re: [shell-script] Dificuldades com expressões regulares
Date: Sat, 13 Jul 2013 21:49:41 -0300

Obrigado, Saulo,

Agora entrei em férias e com a ajuda de um colega acabamos tendo sucesso.
Quando retornar, posto aqui o resultado final. Mas vou olhar o link e o sed
também.

Paulo
http://homens-ibcc.blogspot.com
https://www.twitter.com/PSDrumond
https://www.facebook.com/psdrumond

"Não me envergonho do evangelho, porque é o poder de Deus para a salvação
de todo aquele que crê." (Romanos 1:16)


Em 12 de julho de 2013 16:17, Saulo Alves Martins
<address@hidden>escreveu:

> **
>
>
> Boa tarde Paulo,
>
> O problema do seu código é que ele não faz o que você espera.
>
> Sua ER não está correta e também no local errado. Não se usa if para se
> procurar um padrão.
>
> Com o comando sed você pode fazer o que precisa, ele pode procurar (casar)
> o seu padrão, manter o arquivo original e gerar um novo arquivo com a parte
> (mudança) desejada.
>
> Dê uma olhada no comando sed e em ER que você consegue.
>
> Uma fonte para consulta: http://aurelio.net/sed/sed-HOWTO/
>
> Se não conseguir, me disponho a fazer um código para sua finalidade. (me
> manda seu arquivo base para testar.)
>
> Abraço.
> Saulo.
>
> ________________________________
> De: Paulo Soares Drumond <address@hidden>
> Para: Lista de discussão sobre Shell Script <
> address@hidden>
> Enviadas: Sexta-feira, 12 de Julho de 2013 15:30
> Assunto: [shell-script] Dificuldades com expressões regulares
>
>
>
> Boa tarde senhores,
>
> De antemão já peço perdão pela ignorância em Shell Script, mas tenho
> extrema dificuldade no manuseio de expressões regulares. Pesquisei aqui em
> livros, sites, fiz alguns testes, mas não consigo fazer o que quero.
>
> Tenho um arquivo com alguns padrões repetidos e preciso para cada um destes
> padrões gerar um arquivo separado. O delimitador disso é a palavra-chave
> POROSITY_<num>, sendo <num> um número variando de 1 a 100. Ou seja,
> identifiquei que a linha começa com "POROSITY" começo a escrever um novo
> arquivo até encontrar a próxima linha começada por "POROSITY".
>
> Fiz um script pequeno, mas estou esbarrando na comparação. Ele agora não dá
> erro, mas não acha nunca esse padrão. Incluí umas linhas para analisar a
> saída e às vezes, o variável LINHA tem o conteúdo de um "ls" no diretório.
> Alguém tem uma sugestão?
>
> O script é:
> #!/bin/bash
>
> indice=-1
> achou=0
>
> cat Grid_Imagens.txt | while read LINHA
> do
> if [ "$LINHA" != ^POROSITY ]
> then
> if [ $achou = 1 ]
> then
> echo $LINHA >> img${indice}.inc
> fi
> else
> achou=1
> let indice++
> echo $LINHA > img${indice}.inc
> fi
> done
>
> Paulo
> http://homens-ibcc.blogspot.com
> https://www.twitter.com/PSDrumond
> https://www.facebook.com/psdrumond
>
> "Não me envergonho do evangelho, porque é o poder de Deus para a salvação
> de todo aquele que crê." (Romanos 1:16)
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


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



reply via email to

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