Probleme avec la commande sort

Victoria -  
 Victoria -
Bonjour,

Je dois trouver une commande pour trier un fichier qui contient 100 lignes dans le désordre.
Le fichier est constitué de la manière suivante : un numéro puis une tabulation et ensuite une phrase, ce que je dois trier de manière alphabétique c'est le début de chaque phrase mais tout en gardant leur numéro au début.

Exemple :

84 Le petit blablabla
77 Ce qui suit blabla
99 Bon courage blabla

Comment faire??? J'ai essayé avec la commande SORT mais je n'y arrive pas.

Merci d'avance pour vos réponses...
A voir également:

5 réponses

lami20j
 
Salut,

Comme ça?

lami20j@debian:~/michelin$ cat plop.txt 
84      Le petit blablabla
77      Ce qui suit blabla
99      Bon courage blabla 
lami20j@debian:~/michelin$ sort -k+2 plop.txt 
99      Bon courage blabla 
77      Ce qui suit blabla
84      Le petit blablabla
1
Victoria
 
Excuse-moi, j'ai fait une fausse manipulation mais là ça marche mais peux-tu m'expliquer ta commande que signifie le k??? le+2???

Merci.
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896 > Victoria
 
Salut,

man sort

       +POS1 [-POS2]
              Indiquer un champ à utiliser comme clé de tri pour chaque ligne.
              Le champ consiste en une portion de de ligne débutant à la posi-
              tion POS1, et s'étendant jusqu'à POS2 non-inclue (ou jusqu'à  la
              fin de la ligne si POS2 n'est pas mentionnée). Les positions des
              champs et des caractères sont numérotées à partir de 0.

       -k POS1[,POS2]
              Une autre syntaxe possible pour indiquer les clés de  tri.   Les
              positions  des champs et des caractères sont numérotées à partir
              de 1.

       Une position est de la forme f.c,  où  f  est  le  numéro  du  champ  à
       utiliser,  et c le numéro du premier caractère depuis le début du champ
       (avec +pos) ou depuis la fin du champ précédent (avec -pos).  La partie
       .c  de  la  position peut être omise, auquel cas le caractère considéré
       est le premier du champ.  Si l'option -b  est  choisie,  la  partie  .c
       d'une  spécification de champ est comptée à partir du premier caractère
       non-blanc du champ (pour +pos) ou à partir du  premier  caractère  non-
       blanc suivant le champ précédent (pour -pos).

       Un  argument  +pos  ou  -pos  peut également avoir un préfixe constitué
       d'une des lettres d'option Mbdfinr auquel cas les options  globales  ne
       s'appliquent  pas  à ce champ.  l'option -b peut être attachée indépen-
       damment aux parties +pos ou -pos d'une spécification de champ. Si  elle
       est  héritée  d'une option globale, elle s'appliquera aux deux parties.
       Si une option -n ou -M est utilisée,  ceci  implique  que  l'option  -b
       s'applique  aux  deux  spécifications  +pos  et -pos.  Les clés peuvent
       s'étendre sur plusieurs champs.
0
lami20j > jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention  
 
Salut,

Merci ;-)
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896 > lami20j
 
De rien man ;-))
0
Victoria > lami20j
 
MERCI MERCI MERCI beaucoup à tous, ça marche comme sur des roulettes......
0
Utilisateur anonyme
 
Je dois trouver une commande pour trier un fichier qui contient 100 lignes

Ce ne serait pas plutôt un dossier qui contient 100 fichiers dans le désordre ?
0
Victoria
 
Non, non, c'est bien 100 lignes dans le désordre avec leur numéro attribué dans un seul fichier et il faut mettre par ordre alphabétique les phases tout en respectant leur numéro.
0
Victoria
 
Salut ami20j

Oui, c'est le résultat que je dois obtenir mais quand j'essaye ta commande, ça ne marche, ça me trie les numéros et non les phrases, cela est peut-être du à la tabulation qu'il y a entre le numéro et la phrase. Je ne sais pas mais en tout cas ça va pas... Merci quand même!! Une autre solution????
0
lami20j
 
Re,

Dans l'exemple que je t'ai donné il trie selon le 2ème champ et pas les numéros au début de ligne.
Mets ton fichier sur cjoint.com pour pouvoir tester.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
sort -n|cat nom_du_fichier

Mais le trie est à l'envers
0