#1 Le 07/03/2016, à 18:55
- galexis
[Resolu]Bash: aide pour trie d'un tableau
Bonjour,
j'ai fait un script qui récupérère des données dans un fichier xml et les mets dans un tableau.
Chaque ligne est composée de:
- un nom (des lettres et chiffres, 2 points, et des chiffres). exemple XC1:2
- différente s informations toutes séparées de ";"
Ce qui donne:
XA:10;4;B17;310;513
XA:11;4;F12;;510
XA:12;4;F14;514;517
XA:13;4;F15;515;518
XA:14;4;F17;516;519
XA:1;4;B5;310;501;501;501
XA:15;6;B14;310;702
XA:16;6;F14;705;706
XA:17;9;D3;1001;1002
XA:18;9;D7;1009;1010
XA:19;9;D9;1011;1012
XA:20;9;D11;1014;1015
XA:21;9;D14;1017;1018
XA:22;9;B17;;1021
XA:23;9;G17;;1022
XA:24;7;F4;801;806
XA:2;4;B8;310;505;505
XA:25;7;F5;802;805
Je souhaite trier toutes ces données par le nom:
- d'abord par les XA1 dans l'ordre alphabétique
- ensuite par les nombres après les 2 points dans l'ordre croissant.
J'utilise la commande:
bornier_trie=( $(printf "%s\n" ${bornier[*]} | sort -d -f -t:) )
Le problème qu'on voit ci-dessus, c'est que XA:10 11 12 sont avant XA:1.
Comment améliorer cela ?
Merci.
Cordialement.
Dernière modification par galexis (Le 08/03/2016, à 07:03)
Hors ligne
#2 Le 07/03/2016, à 19:34
- pingouinux
Re : [Resolu]Bash: aide pour trie d'un tableau
Bonsoir,
Essaye ceci
sort -fV fichier
Hors ligne
#3 Le 07/03/2016, à 20:14
- galexis
Re : [Resolu]Bash: aide pour trie d'un tableau
XA:1;4;B5;310;501;501;501
XA:2;4;B8;310;505;505
XA:3;4;F5;_;503
XA:4;4;F3;503;504
XA:5;4;F6;_;503
XA:6;4;F8;506;508
XA:8;4;B14;310;511
XA:9;4;B15;310;512
XA:10;4;B17;310;513
XA:11;4;F12;;510
XA:12;4;F14;514;517
XA:13;4;F15;515;518
XA:14;4;F17;516;519
XA:15;6;B14;310;702
XA:16;6;F14;705;706
XA:17;9;D3;1001;1002
XA:18;9;D7;1009;1010
XA:19;9;D9;1011;1012
Merci ! Nickel !
Hors ligne
#4 Le 07/03/2016, à 23:17
- Hizoka
Re : [Resolu]Bash: aide pour trie d'un tableau
un petit résolu ?
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne