Ler arquivo xml com script [RESOLVIDO]

1. Ler arquivo xml com script [RESOLVIDO]

Adriano Bertolo de Azevedo
hellsdragon

(usa Debian)

Enviado em 30/09/2009 - 08:31h

Olá,

Estou precisando separar aquivos xmls, que é utilizado na Nota Fiscal Eletrônica em pastas por clientes. Para isso precisaria ler o xml e checar o campo cliente e copiá-lo para a pasta designada para esse cliente.

Por favor pessoal do VOL me deem uma luz.
Abraços

Este é o exemplo do xml que tenho que preciso copiá-lo...

</ide>
&#8722;<emit>
<CNPJ>CNPJ EMPRESA QUE EU TRABALHO</CNPJ>
<xNome>EMPRESA QUE EU TRABALHO</xNome>
<xFant>EMPRESA QUE EU TRABALHO</xFant>
&#8722;<enderEmit>
<xLgr>RUA DA EMPRESA QUE EU TRABALHO</xLgr>
<nro>NUMERO</nro>
<xBairro>BAIRRO EMPRESA QUE EU TRABALHO</xBairro>
<cMun>3520509</cMun>
<xMun>CIDADE EMPRESA QUE EU TRABALHO</xMun>
<UF>SP</UF>
<CEP>CEP EMPRESA QUE EU TRABALHO</CEP>
<cPais>1058</cPais>
<xPais>Brasil</xPais>
<fone>TELEFONE</fone>
</enderEmit>
<IE>INSCRIÇÃO ESTADUAL EMPRESA QUE EU TRABALHO</IE>
</emit>
-<dest>
<CNPJ>CNPJ CLIENTE</CNPJ>
<xNome>CLIENTE</xNome>
&#8722;<enderDest>
<xLgr>RUA CLIENTE</xLgr>
<nro>103</nro>
<xBairro>BAIRRO CLIENTE</xBairro>
...

O check tem que ser no campo <xNome> dentro da estrutura -<dest>...pois há outros campos <xNome> no decorrer do xml.
Cada cliente ta dentro deste campo.


  


2. Re: Ler arquivo xml com script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 30/09/2009 - 08:45h

uai, vc nao ta se ajudando. posta o padrao, um exemplo de cliente no arquivo.

tente algo como (isso é so um trecho)

grep 'padrao cliente' >> pastaclientes/arquivo-clientes.txt


3. Localizando campos do XML veja se ajuda assim.

Daniel Gusmão
danielgusmao

(usa Ubuntu)

Enviado em 06/01/2016 - 21:50h

<faturado>
<nome>CLOVIS FERREIRA DOS REIS</nome>
</faturado>

<atendente>
<nome>SANDREANDO MARTINHO DA SILVA</nome>
</atendente>


sed -n '/<faturado>/,/<\/faturado>/p' *.xml | grep -oP "<nome>(.*)</nome>" | cut -d ">" -f 2 | cut -d "<" -f 1
CLOVIS FERREIRA DOS REIS

sed -n '/<atendente>/,/<\/atendente>/p' *.xml | grep -oP "<nome>(.*)</nome>" | cut -d ">" -f 2 | cut -d "<" -f 1
SANDREANDO MARTINHO DA SILVA






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts