Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/05/2007, 18h40   #1
Invité de passage
 
Inscription : mai 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 21
Points : 2
Points : 2
Par défaut Script awk ou ksh pour découper un fichier xml

Bonjour à tous :)

Voilà je cherche à découper un fichier xml et j'ai cru comprendre que le awk pourrait être une bonne solution. Seulement je suis déjà pas vraiment fort en ksh, je suis vraiment un niewbie total en awk, et je n'ai rien compris aux quelques exemples que j'ai trouvé sur le net, voilà donc pourquoi je viens vous demander de l'aide ^^"

Mon fichier xml se présente comme suis :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<données>
    <pleindebalisemaisosef1>
</données>
<données>
    <pleindebalisemaisosef2>
</données>
<données>
    <pleindebalisemaisosef3>
</données>
<données>
    <pleindebalisemaisosef4>
</données>
etc... (le nombre de <données> est variable)
Et je dois obtenir autant de fichier (qu'on pourra nommer fic_1, fic_2, fic_3, etc enfin vous voyez le truc) que de balise données, autrement dit fic_1 contiendra
Citation:
<données>
<pleindebalisemaisosef1>
</données>
fic_2 contiendra

Citation:
<données>
<pleindebalisemaisosef2>
</données>
etc, etc...


Voilà voilà, j'espère que vous saurez m'aidez, je vous en remercie d'avance :)
Griffith est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2007, 09h35   #2
Invité de passage
 
Inscription : mai 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 21
Points : 2
Points : 2
up ^^"
Griffith est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2007, 22h58   #3
Membre expérimenté
 
Avatar de BlaireauOne
 
Inscription : mars 2007
Messages : 469
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2007
Messages : 469
Points : 576
Points : 576
Citation:
Envoyé par Griffith
Mon fichier xml se présente comme suis :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<données>
    <pleindebalisemaisosef1>
</données>
<données>
    <pleindebalisemaisosef2>
</données>
<données>
    <pleindebalisemaisosef3>
</données>
<données>
    <pleindebalisemaisosef4>
</données>
etc... (le nombre de <données> est variable)

Ça doit faire ce que tu veux
http://lea-linux.org/cached/index/Dev-awk.html


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
awk  '
BEGIN {
Ctr=1
OutFile="Fic_"Ctr
}
{
print $0 > OutFile
	if ($1 == "</données>") {
		Ctr++
		OutFile="Fic_"Ctr
	}
}
END {
	print "* "Ctr" fichier(s) créés"
} '  fichier.xml
BlaireauOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h46.


 
 
 
 
Partenaires

Hébergement Web