Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3075 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  faire un tri en milieu de chaine en shellscript

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

faire un tri en milieu de chaine en shellscript

n°255774
vimaster
i love vi editor it's the best
Posté le 28-04-2003 à 15:49:07  profilanswer
 

comment trier les O?? dans un fichier ressmamblant à :
 
AAAAAABBBBOEETTTTTTYYYYYYY
EEEEEERRRROXXUUUUUUIIIIIII
etc....
avec les O?? tjrs à la meme colone
 
et 2eme cas avec les O?? pouvant etre à une colone variable
comme dans :
AAAABBBBOEETTTTTTYYYYYYY
EEERRROXXUUUUUUIIIIIII
 
j'ai pas trouvé d'astuce de shell pour le faire....
ça doit pourtant etre tres simple.....
 
en général je trouve tjrs une solution mais pas aujourd'hui.....
 :heink:  
 


---------------
I love vi editor. it's the best one.
mood
Publicité
Posté le 28-04-2003 à 15:49:07  profilanswer
 

n°255787
vimaster
i love vi editor it's the best
Posté le 28-04-2003 à 16:09:49  profilanswer
 

bon j'ai trouvé en jouant avec le -k de sort.
 
parcontre la ou c'est interessant c'est de trouver la solution du meme style sur plusieurs colones
 
azertyuiop
 
c'est à dire trier en prioritee premiere la colonne des y
en second ALAFOIS celles de ze
et en troisième celles des o....
 
notre besoin c'est ça en fait.


---------------
I love vi editor. it's the best one.
n°255870
vimaster
i love vi editor it's the best
Posté le 28-04-2003 à 20:08:47  profilanswer
 

vimaster a écrit :

bon j'ai trouvé en jouant avec le -k de sort.
 
parcontre la ou c'est interessant c'est de trouver la solution du meme style sur plusieurs colones
 
azertyuiop
 
c'est à dire trier en prioritee premiere la colonne des y
en second ALAFOIS celles de ze
et en troisième celles des o....
 
notre besoin c'est ça en fait.
 


 
 
personne pour relever le defi ?


---------------
I love vi editor. it's the best one.
n°255904
Choda Boy
Posté le 28-04-2003 à 21:52:32  profilanswer
 

Un truc comme ça :
 
sort -k2, -k0, mon_fichier
ou sort -k2,3 -k0, mon_fichier
 
trie sur le troisième champ puis sur le premier
 
Par contre, j'ai pas linux sous la main donc je ne peux pas être sûr de la commande. Mais sort permet de trier sur un champ pour sur un autre. Voilà
 

n°255984
vimaster
i love vi editor it's the best
Posté le 29-04-2003 à 09:44:29  profilanswer
 

Choda Boy a écrit :

Un truc comme ça :
 
sort -k2, -k0, mon_fichier
ou sort -k2,3 -k0, mon_fichier
 
trie sur le troisième champ puis sur le premier
 
Par contre, j'ai pas linux sous la main donc je ne peux pas être sûr de la commande. Mais sort permet de trier sur un champ pour sur un autre. Voilà
 
 


 
oui ça c'est le cas numero 1 (premier post)  
 
mais ça j'arrive à le faire moi aussi


---------------
I love vi editor. it's the best one.
n°255986
minusplus
Posté le 29-04-2003 à 09:52:07  profilanswer
 

j'ai pas compris ce que tu cherche à faire. trier les O ?

n°256014
vimaster
i love vi editor it's the best
Posté le 29-04-2003 à 11:22:57  profilanswer
 

minusplus a écrit :

j'ai pas compris ce que tu cherche à faire. trier les O ?  


 
 
un tri par colonnes  
 
trier par prioritees des colonnes
trier lignes par valeurs dans la colonne 4,5,6 1,2 par exemple
 
dfghjklm
qsdfghjk
 
tri prioritaire : fgh + tri secondaire qs
 
ca fait donc un tri sur les colonnes 4,5,6 si il y a des doublons ca tri parmi les doublons les colonnes 1,2
 
 
le mot à trier est contenu dans les 4emes5eme6eme caracteres  
mais la ligne doit pas etre modifiée.
 
1b2n3wee
2b1h1wrr
3b2n3eee
 
une fois trié comme ça donne donc
 
2b1h1wrr
3b2n3eee
1b2n3wee
 
** *** colonnes significatives
 
 
 
 


---------------
I love vi editor. it's the best one.
n°256102
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2003 à 15:30:25  profilanswer
 

ok, c'est pas les "O", c'est les "O??" que tu veux trier ?
 
(les ?? c'etait un peu deroutant dans le 1er message :p)

n°256105
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2003 à 15:32:51  profilanswer
 

vimaster a écrit :

bon j'ai trouvé en jouant avec le -k de sort.
 
parcontre la ou c'est interessant c'est de trouver la solution du meme style sur plusieurs colones
 
azertyuiop
 
c'est à dire trier en prioritee premiere la colonne des y
en second ALAFOIS celles de ze
et en troisième celles des o....
 
notre besoin c'est ça en fait.
 


 
a priori, si 'sort' est un tri stable (il me semble que c'est le cas) tu fais tes tris successivement dans l'ordre inverse :
d'abord trier o, puis ze puis y et ca doit aller non ?
 
ou alors j'ai pas encore compris le probleme :pt1cable:

n°256300
vimaster
i love vi editor it's the best
Posté le 30-04-2003 à 07:43:19  profilanswer
 

philou_a7 a écrit :


 
a priori, si 'sort' est un tri stable (il me semble que c'est le cas) tu fais tes tris successivement dans l'ordre inverse :
d'abord trier o, puis ze puis y et ca doit aller non ?
 
ou alors j'ai pas encore compris le probleme :pt1cable:  


 
 
non sort fonctionne si le tri se passe dans l'ordre gauche --> droite
 
mais si tu tries d'abord la colone 4 et ensuite la colone 3 par exemple ca marche plus du tout


---------------
I love vi editor. it's the best one.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  faire un tri en milieu de chaine en shellscript

 

Sujets relatifs
Besoin d'aide pour un script: récupération de chaine de caractéresForcer une chaine pleine de caracteres spéciaux, en Latex
[Carte TV ] Impossible de changer de chaineblème impression réseau machine Linux au milieu du monde Windows!!
script UNIX : comment trouver une chaine dans plusieurs fichiers ? 
Plus de sujets relatifs à : faire un tri en milieu de chaine en shellscript


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)