bonjour,
j'ai fait une cature de trames qui contient notament des trames
<SyncML>*</SyncML>
avec l'* qui est tout le contenu de la trame.
Je voudrais recup=E9rer le contenu de ces trames, (avec les deux balises
<SyncML> et </SyncML> si possible), mais j'ai un peut de mal =E0 trouver
la commande adapt=E9e.
Pour moi, il faudrai utiliser une expression r=E9guli=E8re du type
"<SyncML>(.*)</SyncML>" mais je ne vois pas trop avec quelle
commande,...
j'obtiens toutes les trames en faisant un
cat maCapture
et je pense qu'on pourrais mettre tous =E7a dans une autre commande avec
un pipe et une expression r=E9guli=E8re
Je ne suis pas tr=E8s dou=E9 avec tous =E7a, pourriez vous me donner un ptit
coup de main ?
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton temps.
ok, je vais essayer de regarder ça par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>).
voila
Fab
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton
temps.
ok, je vais essayer de regarder ça
par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le
fichier maCapture n'est pas que en xml, c'est en fait une capture
réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges
entre deux machines dont quelques trames d'xml (qui commencent à
chaque fois par <SyncML>).
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton temps.
ok, je vais essayer de regarder ça par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>).
voila
Fab
Luc.Habert.00__arjf
"" :
par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>).
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du texte dans un document xml ou pas. Si non, tu ne peux pas t'en sortir avec xslt, et il va te falloir bourriner du perl.
"n@pster" :
par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le
fichier maCapture n'est pas que en xml, c'est en fait une capture
réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges
entre deux machines dont quelques trames d'xml (qui commencent à
chaque fois par <SyncML>).
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du
texte dans un document xml ou pas. Si non, tu ne peux pas t'en sortir avec
xslt, et il va te falloir bourriner du perl.
par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>).
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du texte dans un document xml ou pas. Si non, tu ne peux pas t'en sortir avec xslt, et il va te falloir bourriner du perl.
n
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du texte dans un document xml ou pas.
non, ça ne passe pas
Si non, tu ne peux pas t'en sortir avec xslt, et il va te falloir bourriner du perl.
"bourriner" ! ouhaa, j'ai eu 3 heures de cours sur le perl et j'ai jamais pratiqué, alors "bricoler" c'est dans la limite du faisable, mais "bourriner" c'est pas pour moi.
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du
texte dans un document xml ou pas.
non, ça ne passe pas
Si non, tu ne peux pas t'en sortir avec
xslt, et il va te falloir bourriner du perl.
"bourriner" ! ouhaa, j'ai eu 3 heures de cours sur le perl et j'ai
jamais pratiqué, alors "bricoler" c'est dans la limite du faisable,
mais "bourriner" c'est pas pour moi.
Il faudrait voir si ce qui est en dehors des SyncML peut passer pour du texte dans un document xml ou pas.
non, ça ne passe pas
Si non, tu ne peux pas t'en sortir avec xslt, et il va te falloir bourriner du perl.
"bourriner" ! ouhaa, j'ai eu 3 heures de cours sur le perl et j'ai jamais pratiqué, alors "bricoler" c'est dans la limite du faisable, mais "bourriner" c'est pas pour moi.
ALain Montfranc
a écrit
bonjour, j'ai fait une cature de trames qui contient notament des trames <SyncML>*</SyncML> avec l'* qui est tout le contenu de la trame.
Je voudrais recupérer le contenu de ces trames, (avec les deux balises <SyncML> et </SyncML> si possible), mais j'ai un peut de mal à trouver la commande adaptée. Pour moi, il faudrai utiliser une expression régulière du type "<SyncML>(.*)</SyncML>" mais je ne vois pas trop avec quelle commande,...
j'obtiens toutes les trames en faisant un cat maCapture et je pense qu'on pourrais mettre tous ça dans une autre commande avec un pipe et une expression régulière Je ne suis pas très doué avec tous ça, pourriez vous me donner un ptit coup de main ?
Merci
Fab
Une solution moyennement simple bien qu'un peu crade :
Identifier, directement ou par recodage, 3 caractères affichables ne pouvant pas faire partie du fichier (par "par recodage" j'entends en effectuant un transcodage visant à le remplacer par une séquence, comme on le fait en HTML : < remplace < pour permettre d'utiliser le < en marqueur)
Remplacer <SyncML> Par le premier caractère (mettons par exemple D) Replacer </SyncML> par le deuxième (mettons F) Remplacer le retour chariot par le troisième (mettons L)
Ceci se fait simplement à coup de sed
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame => tu obtiens le contenu des trames
Re-remplacer L par un retour chariot
Eventuellement effectuer le transcodage inverse de celui fait en préliminaire
C'est crade mais ca marche sur tout *nix de base (meme sans Perl & co)
n@pster a écrit
bonjour,
j'ai fait une cature de trames qui contient notament des trames
<SyncML>*</SyncML>
avec l'* qui est tout le contenu de la trame.
Je voudrais recupérer le contenu de ces trames, (avec les deux balises
<SyncML> et </SyncML> si possible), mais j'ai un peut de mal à trouver
la commande adaptée.
Pour moi, il faudrai utiliser une expression régulière du type
"<SyncML>(.*)</SyncML>" mais je ne vois pas trop avec quelle
commande,...
j'obtiens toutes les trames en faisant un
cat maCapture
et je pense qu'on pourrais mettre tous ça dans une autre commande avec
un pipe et une expression régulière
Je ne suis pas très doué avec tous ça, pourriez vous me donner un ptit
coup de main ?
Merci
Fab
Une solution moyennement simple bien qu'un peu crade :
Identifier, directement ou par recodage, 3 caractères affichables ne
pouvant pas faire partie du fichier (par "par recodage" j'entends en
effectuant un transcodage visant à le remplacer par une séquence, comme
on le fait en HTML : < remplace < pour permettre d'utiliser le < en
marqueur)
Remplacer <SyncML> Par le premier caractère (mettons par exemple D)
Replacer </SyncML> par le deuxième (mettons F)
Remplacer le retour chariot par le troisième (mettons L)
Ceci se fait simplement à coup de sed
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame =>
tu obtiens le contenu des trames
Re-remplacer L par un retour chariot
Eventuellement effectuer le transcodage inverse de celui fait en
préliminaire
C'est crade mais ca marche sur tout *nix de base (meme sans Perl & co)
bonjour, j'ai fait une cature de trames qui contient notament des trames <SyncML>*</SyncML> avec l'* qui est tout le contenu de la trame.
Je voudrais recupérer le contenu de ces trames, (avec les deux balises <SyncML> et </SyncML> si possible), mais j'ai un peut de mal à trouver la commande adaptée. Pour moi, il faudrai utiliser une expression régulière du type "<SyncML>(.*)</SyncML>" mais je ne vois pas trop avec quelle commande,...
j'obtiens toutes les trames en faisant un cat maCapture et je pense qu'on pourrais mettre tous ça dans une autre commande avec un pipe et une expression régulière Je ne suis pas très doué avec tous ça, pourriez vous me donner un ptit coup de main ?
Merci
Fab
Une solution moyennement simple bien qu'un peu crade :
Identifier, directement ou par recodage, 3 caractères affichables ne pouvant pas faire partie du fichier (par "par recodage" j'entends en effectuant un transcodage visant à le remplacer par une séquence, comme on le fait en HTML : < remplace < pour permettre d'utiliser le < en marqueur)
Remplacer <SyncML> Par le premier caractère (mettons par exemple D) Replacer </SyncML> par le deuxième (mettons F) Remplacer le retour chariot par le troisième (mettons L)
Ceci se fait simplement à coup de sed
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame => tu obtiens le contenu des trames
Re-remplacer L par un retour chariot
Eventuellement effectuer le transcodage inverse de celui fait en préliminaire
C'est crade mais ca marche sur tout *nix de base (meme sans Perl & co)
Nicolas George
"" wrote in message : <snip>
Est-ce que tu pourrais répondre au bon message, plutôt que répondre à chaque fois au message original du thread ?
"n@pster" wrote in message
<1176730339.127745.75090@l77g2000hsb.googlegroups.com>:
<snip>
Est-ce que tu pourrais répondre au bon message, plutôt que répondre à chaque
fois au message original du thread ?
Est-ce que tu pourrais répondre au bon message, plutôt que répondre à chaque fois au message original du thread ?
n
pas de pb, mais j'utilise google, et une fois, sur fr.comp.os.unix on m'a dit qu'il fallait mieux que je fasse comme ça... Mais pour moi, c'est plus simple de faire répondre directement sur le message concerné. c'est ce que je vais faire maintenant.
désolé
Fab
pas de pb, mais j'utilise google, et une fois, sur fr.comp.os.unix on
m'a dit qu'il fallait mieux que je fasse comme ça...
Mais pour moi, c'est plus simple de faire répondre directement sur le
message concerné.
c'est ce que je vais faire maintenant.
pas de pb, mais j'utilise google, et une fois, sur fr.comp.os.unix on m'a dit qu'il fallait mieux que je fasse comme ça... Mais pour moi, c'est plus simple de faire répondre directement sur le message concerné. c'est ce que je vais faire maintenant.
ne t'en fait pas, j'ai bien compris le pb et je suis entièrement d'accord avec toi, c'est juste que je n'utile pas beaucoup les news group et qu'un jour on m'a demandé de faire ça.
Fab
ne t'en fait pas, j'ai bien compris le pb et je suis entièrement
d'accord avec toi, c'est juste que je n'utile pas beaucoup les news
group et qu'un jour on m'a demandé de faire ça.
ne t'en fait pas, j'ai bien compris le pb et je suis entièrement d'accord avec toi, c'est juste que je n'utile pas beaucoup les news group et qu'un jour on m'a demandé de faire ça.
Fab
Stephane Chazelas
2007-04-16, 06:21(-07), :
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton temps.
ok, je vais essayer de regarder ça par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>). [...]
Et c'est quoi le probleme avec la commande perl que j'ai donnée? (dans la mesure ou il n'y a pas d'imbrication de <SyncML> ou de <SyncML> pouvant etre present dans du CDATA?).
-- Stéphane
2007-04-16, 06:21(-07), n@pster:
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton
temps.
ok, je vais essayer de regarder ça
par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le
fichier maCapture n'est pas que en xml, c'est en fait une capture
réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges
entre deux machines dont quelques trames d'xml (qui commencent à
chaque fois par <SyncML>).
[...]
Et c'est quoi le probleme avec la commande perl que j'ai donnée?
(dans la mesure ou il n'y a pas d'imbrication de <SyncML> ou de
<SyncML> pouvant etre present dans du CDATA?).
Maintenant, je pense qu'apprendre le xslt serait un meilleur usage de ton temps.
ok, je vais essayer de regarder ça par contre, je ne sais pas si j'ai vraiment bien expliqué, en fait le fichier maCapture n'est pas que en xml, c'est en fait une capture réalisée avec wireshark (ou tcpdump) et qui contient plein d'échanges entre deux machines dont quelques trames d'xml (qui commencent à chaque fois par <SyncML>). [...]
Et c'est quoi le probleme avec la commande perl que j'ai donnée? (dans la mesure ou il n'y a pas d'imbrication de <SyncML> ou de <SyncML> pouvant etre present dans du CDATA?).
-- Stéphane
Stephane Chazelas
2007-04-16, 15:39(+02), ALain Montfranc: [...]
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame => tu obtiens le contenu des trames [...]
Dans l'esprit, c'est valide. A ceci pres que sed travaille sur du texte et qu'en enlevant les sauts de lignes (pas retour charriot!), tu prends le risque de convertir les donnees en quelque chose qui n'est plus du texte (par exemple si tu te retrouve avec des lignes de plus de LINE_MAX). (et probablement, XML n'est pas forcement du texte, de base).
-- Stéphane
2007-04-16, 15:39(+02), ALain Montfranc:
[...]
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame =>
tu obtiens le contenu des trames
[...]
Dans l'esprit, c'est valide. A ceci pres que sed travaille sur
du texte et qu'en enlevant les sauts de lignes (pas retour
charriot!), tu prends le risque de convertir les donnees en
quelque chose qui n'est plus du texte (par exemple si tu te
retrouve avec des lignes de plus de LINE_MAX). (et probablement,
XML n'est pas forcement du texte, de base).
Faire ensuite un sed 's/F[^D]*D//' pour virer le contenu hors trame => tu obtiens le contenu des trames [...]
Dans l'esprit, c'est valide. A ceci pres que sed travaille sur du texte et qu'en enlevant les sauts de lignes (pas retour charriot!), tu prends le risque de convertir les donnees en quelque chose qui n'est plus du texte (par exemple si tu te retrouve avec des lignes de plus de LINE_MAX). (et probablement, XML n'est pas forcement du texte, de base).