Bonjour,
J'ai un fichier avec sur chaque ligne le contenu d'un fichier XML.
Par exemple :
ligne 1 : <?xml version="1.0"><root><key>XXX</key>...</root>
ligne 2 : <?xml version="1.0"><root><key>XXX</key>...</root>
Et pour trier les lignes de ce fichier, j'extrait avec sed les 'XXX' de l'élément <key> que j'enregistre dans un fichier temporaire.
Puis je trie ce fichier temp que je parcours ligne par ligne pour trier mon fichier de départ avec des grep.
Cela donne :
Ca marche bien pas de soucis par contre je cherche une solution plus optimisée pour mon cas mais je ne vois pas comment faire autrement. Une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 sed 's/.*<key>\([0-9]*\)<\/key>.*/\1/g' "$SRC_FILE" > "$KEY_FILE" > "$TMP_FILE" sort -u "$KEY_FILE" | while read KEY do grep "<key>${KEY}</key>" "$SRC_FILE" >> "$TMP_FILE" done
Merci!








Répondre avec citation





Partager