Recherche GREP fichier XML
Résolu
Bonjour,
lorsque je souhaite recherche via GREP une chaîne de caractère dans un fichier XML, je n'arrive pas a trouvé car ma commande fait défiler tout le contenu du fichier mais ne trouve pas la chaîne alors qu'elle existe!
Mon fichier
J'ai également essayé grep -e mais pareil.
Une idée a m'indiquer?
Merci d'avance
--
L'accès au savoir est la première liberté que chaque homme devrait avoir.
lorsque je souhaite recherche via GREP une chaîne de caractère dans un fichier XML, je n'arrive pas a trouvé car ma commande fait défiler tout le contenu du fichier mais ne trouve pas la chaîne alors qu'elle existe!
Mon fichier
<?xml version="1.0" encoding="ISO-8859-15" ?>
<tag1>test</tag1><tag2>toto</tag2><tag3>flop</tag3><tag4>tac</tag4><tag5>toc</tag5><tag6>tuc</tag6><tag7>tic</tag7>
etc..
grep '<tag5>' Mon fichier
J'ai également essayé grep -e mais pareil.
Une idée a m'indiquer?
Merci d'avance
Configuration: Linux / Chrome 88.0.4324.96
--
L'accès au savoir est la première liberté que chaque homme devrait avoir.
2 réponses
-
Bonjour,
Vu quegrep
filtre les lignes qui contienne le motif cherché, si ton fichier xml est écrit sur une ligne, c'est normal que tu vois tout le fichier. Tu peux vérifié ce qui a été "grepé" avec l'option--color
:
(mando@silk) (~) $ grep --color "<tag5>" toto.txt
<tag1>test</tag1><tag2>toto</tag2><tag3>flop</tag3><tag4>tac</tag4><tag5>toc</tag5><tag6>tuc</tag6><tag7>tic</tag7>
Si tu ne veux afficher que la partie "grepée", utilise l'option-o
:
(mando@silk) (~) $ grep --color -o "<tag5>" toto.txt
<tag5>
Dans ton cas, il pourrait être intéressant d'indenter ton fichier XML au préalable (voir cette discussion).
Bonne chance