SORT(1)           Manuel de l'utilisateur Linux           SORT(1)


NOM
       sort - Trier les lignes d'un fichier texte.

SYNOPSIS
       sort  [-cmus]  [-t  séparateur] [-o fichier_de_sortie] [-T
       répertoire_temporaire]  [-bdfiMnr]  [+POS1  [-POS2]]   [-k
       POS1[,POS2]] [fichier...]
       sort {--help,--version}

DESCRIPTION
       Cette page de manuel documente la version GNU de sort.

       sort  trie,  regroupe  ou  compare  toutes  les lignes des
       fichiers indiqués.  Si aucun fichier n'est fourni,  ou  si
       le  nom  `-'  est  mentionné,  la  lecture  se fera depuis
       l'entrée standard.

       Par défaut, sort écrit ses résultats sur la  sortie  stan­
       dard.

       sort  peut  opérer suivant trois modes : tri (par défaut),
       regroupement, et  vérification  de  l'ordre.  Les  options
       suivantes modifient le mode opératoire :

       -c     ([NDT]  c  =  check  -  vérifier)  Vérifie  si  les
              fichiers fournis sont déjà triés : s'ils ne le sont
              pas, afficher un message d'erreur, et terminer avec
              un code de retour valant 1.

       -m     ([NDT] m = merge - melanger) Regrouper les fichiers
              indiqués  en  les  triant.  Chaque fichier d'entrée
              doit déjà être trié individuellement. Il  est  tou­
              jours  possible  de  trier plutôt que de réunir, le
              regroupement est fourni parce qu'il est plus rapide
              dans les cas où il fonctionne.

       La  comparaison de deux lignes se fait ainsi : Si un champ
       clé a été indiqué, sort compare chaque  paire  de  champs,
       dans  l'ordre précisé sur la ligne de commande, jusqu'à ce
       qu'une différence soit trouvée, ou qu'il ne reste plus  de
       champs.

       Si  l'une des options globales Mbdfinr est utilisée, et si
       aucun champ clé n'est indiqué,  sort  compare  les  lignes
       entières en fonction des options globales.

       Finalement,  si  toutes  les  clés sont égales, en dernier
       ressort sort compare les lignes octet  par  octet  suivant
       l'ordre  défini sur la machine. Cette dernière comparaison
       accepte l'option globale -r.  L'option -s (stable)  inhibe
       cette  comparaison  en dernier recours afin que les lignes
       considérées comme égales restent à leurs  positions  rela­
       tives.  Si aucun champ clé, et aucune option ne sont four­
       nis, -s est sans effet.



FSF                      14 Janvier 1997                        1





SORT(1)           Manuel de l'utilisateur Linux           SORT(1)


       La version GNU de sort n'a pas de limitation concernant la
       longueur  des lignes d'entrée ou les caractères autorisés.
       De plus, si le dernier octet d'une  ligne  d'entrée  n'est
       pas  un saut de ligne (NewLine), la version GNU de sort en
       ajoute un automatiquement.

       Si la variable d'environnement TMPDIR est configurée, sort
       utilise  ce  répertoire  pour  stocker les fichiers tempo­
       raires à la place du répertoire par défaut /tmp.  L'option
       -T  répertoire_temporaire permet également de sélectionner
       un répertoire pour placer les fichiers temporaires, elle a
       priorité sur la variable d'environnement.

       Les options suivantes affectent l'ordre des lignes de sor­
       tie.  Elles  peuvent  être  mentionnées  globalement,   ou
       appliquées  à  un champ clé spécifique. Si aucun champ clé
       n'est indiqué, les options globales s'appliquent aux  com­
       paraisons des lignes entières, sinon elles sont transmises
       aux champs clés n'ayant pas d'option spécifique.

       -b     Ignorer les blancs en début  de  ligne  pendant  la
              recherche de la clé de tri sur chaque ligne.

       -d     Trier  dans l'ordre des répertoires téléphoniques :
              ignorer pour le tri tous les caractères autres  que
              les lettres, les chiffres et les blancs.

       -f     Considérer  les minuscules comme leur équivalent en
              majuscule pendant le tri. Ainsi  `b'  est  trie  de
              manière équivalente a `B'. ([NDT] Bien entendu cela
              ne   fonctionne    pas    avec    les    minuscules
              accentuées...)

       -i     Ignorer  pour  le  tri  les caractères en dehors de
              l'intervalle  ASCII  octal  040-0176  (bornes  com­
              prises).

       -M     Une  chaîne initiale, consistant en un nombre quel­
              conque de blancs, suivi de trois lettres correspon­
              dant  à  une  abreviation  de mois est convertie en
              majuscules avant d'être comparée dans l'ordre `JAN'
              <  `FEB'  <  ...  < `DEC.'  Les noms invalides sont
              considéres  comme  inférieurs  aux  noms   valides.
              ([NDT] Qu'en-est-il vis à vis de la localisation ?)

       -n     Comparer  suivant  la  valeur  arithmétique   d'une
              chaîne   numérique   initiale   composée  d'espaces
              éventuels, suivis optionnellement du signe -, et de
              zéro  ou  plusieurs  chiffres, éventuellement suivi
              d'un  point  décimal  et  de  zéro   ou   plusieurs
              chiffres.

       -r     Inverser  l'ordre  de tri, afin que les lignes avec
              la  plus  grande  valeur  de  clé  apparaissent  en



FSF                      14 Janvier 1997                        2





SORT(1)           Manuel de l'utilisateur Linux           SORT(1)


              premier.

       Les autres options sont :

       -o fichier_de_sortie
              Ecrire  dans le fichier_de_sortie plutôt que sur la
              sortie standard.  Si fichier_de_sortie  est  égale­
              ment  un  fichier  d'entrée, sort copie les données
              dans un fichier temporaire avant le tri  pour  pou­
              voir  écrire  correctement  ses  résultats  dans le
              fichier_de_sortie.

       -t caractère_séparateur
              Utiliser le caractère_séparateur afin de distinguer
              les  champs  pour   rechercher  la  clé  de tri sur
              chaque ligne. Par défaut le  séparateur  de  champs
              est  une chaîne blanche entre chaînes non-blanches.
              Ceci signifie qu'avec l'entrée  `  foo  bar',  sort
              distingue  deux champs ` foo' et ` bar'. Le sépara­
              teur n'appartient ni  au  champ  précédent,  ni  au
              champ suivant.

       -u     Pour  l'action  par  défaut,  ou  pour l'action -m,
              n'afficher que la première séquence de lignes  con­
              sidérées  comme  égales. Pour l'action -c, vérifier
              qu'aucune lignes consécutives ne soient égales.

       +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 position 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 à par­
              tir 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 à par­
       tir  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



FSF                      14 Janvier 1997                        3





SORT(1)           Manuel de l'utilisateur Linux           SORT(1)


       les  options  globales  ne  s'appliquent  pas  à ce champ.
       l'option -b peut être attachée indépendament  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écifica­
       tions  +pos  et  -pos.   Les  clés  peuvent  s'étendre sur
       plusieurs champs.

       De plus quand la version GNU de sort est invoquée avec  un
       seul argument, les options suivantes sont reconnues :

       --help Afficher  un  message d'aide sur la sortie standard
              et terminer normalement.

       --version
              Afficher un numéro de version sur la  sortie  stan­
              dard et terminer normalement.

COMPATIBILITE
       Les  implémentations historiques (BSD et System V) de sort
       diffèrent dans leurs interprétations de certaines options,
       notamment -b, -f, et -n.  La version GNU suit le comporte­
       ment POSIX, qui est généralement (mais pas toujours) celui
       de  la version System V.  Suivant POSIX -n n'implique plus
       obligatoirement -b.  Pour assurer l'homogénéïte, -M a  été
       modifiée  de  la  même  manière.  Dans certains cas, assez
       obscurs, ceci peut affecter la signification des positions
       de  caractères dans les spécifications de champs.  Si ceci
       vous perturbe, vous pouvez ajouter explicitement un -b.

BUGS
       Les différentes significations des numéros  de  champs  en
       fonction de l'utilisation ou non de l'option -k induit une
       confusion certaine.  C'est la faute à POSIX !


TRADUCTION
       Christophe Blaess, 1997.


















FSF                      14 Janvier 1997                        4