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

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

Re: [shell-script] Regexp - Extraindo XML


From: Julio C. Neves
Subject: Re: [shell-script] Regexp - Extraindo XML
Date: Tue, 2 Sep 2008 16:35:15 -0300

Faça o seguinte (sem testar):
Pares=$(cat -n Arquivo | grep -E '</?folha>' | cut -f1 | paste -d, - - | tr
-d ' ' )
i=0
while read Par
do
    sed -n "${Par}p" Arquivo > arq$((i++))
done < <(echo "$Pares")
-- 
Abraços,
Julio
*Em setembro estarei dando um treinamento
Shell em São Paulo (em 2 fins de semana).
Mais informações: www.4linux.com.br
Tel: (11) 2125-4747*

2008/9/1 jimmy <address@hidden>

>   __________________________________________________________
>
> se a estrutura do arquivo for exatamente como mencionado, tente esse script
>
> em sed:
>
> --------------------------------------------------
> #!/usr/bin/sed -f
>
> H;
> $!d;
> x;
>
> s/\n\+//g;
> s/>[ \t]\+</></g;
> h;
> s/<raiz><folha>\(<nomefolha>[^<]*<\/nomefolha>\)<\/folha>.*/\1\n/;w folha1
> g;
> s/.*<\/folha><folha>\(<nomefolha>[^<]*<\/nomefolha>\)<\/folha><folha>.*/\1\n/;w
> folha2
> g;
> s/.*<folha>\(<nomefolha>[^<]*<\/nomefolha>\)<\/folha><\/raiz>/\1\n/;w
> folha3
> x;
> d;
> --------------------------------------------------
>
> __________________________________________________________
>
> On Fri, Aug 29, 2008 at 04:34:40PM -0300, 
> address@hidden<warlock.ws%40gmail.com>wrote:
> > Pessoal gostaria da ajuda de voces para um problema aparentemente simples
> que so consegui resolver via perl e gostaria de fazê-lo via bash, eu tenho
> um arquivo XML com a seguinte estrutura :
> >
> > <raiz>
> > <folha>
> > <nomefolha>folha1</nomefolha>
> > </folha>
> > <folha>
> > <nomefolha>folha2</nomefolha>
> > </folha>
> > <folha>
> > <nomefolha>folha2</nomefolha>
> > </folha>
> > </raiz>
> >
> > gostaria de transformar este arquivo em varios arquivos com onome folha1,
> folha2, folha3 contendo tudo que esta entre <folha> e </folha>, parece algo
> simples mas ja tentei e nao obtive soluçao facil usando as ferramentas
> tradicionais, apelei para o perl e usando as bibliotecas internas que lidam
> com xml consegui, porem eh mais complexo do que eu queria e ai nao consigo
> explicar a outra pessoa pra dar manutençao sem que a mesma conheça bastante
> de perl o que dificulta, se fosse bash puro com os sed e semelhantes seria
> facil de explicar e deixar isso para ser mantido por outra pessoa..
> >
> > abraços a todos
> >
> > [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<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
> >
> __________________________________________________________
>  
>



-- 
Abraços,
Julio
Em setembro estarei dando um treinamento
Shell em São Paulo (em 2 fins de semana).
Mais informações: www.4linux.com.br
Tel: (11) 2125-4747


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



reply via email to

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