|
|
8.3 Tris (sort), fusion (paste) et
éclatement (split) de fichiers
- La commande sort trie les lignes d’un ou plusieurs fichiers de
texte.
- Par défaut, le tri se fait suivant l’ordre
lexicographique.
- Par exemple, la commande suivante trie le fichier
/etc/passwd:
- Un certain nombre d’options sont fournies pour
modifier l’ordre du tri: -n pour tri
numérique, -r pour tri inversé, -k x pour tri à partir du champ x, -k x,y pour tri sur les
champs de x à y, -t c pour utiliser le
séparateur de champs c...
- La commande paste fusionne ligne à ligne des fichiers. Par exemple,
la commande suivante fusionne ligne à ligne les fichiers fic1 et fic2 en un fichier
fic3:
- La commande split éclate un fichier en plusieurs fichiers.
- Par défaut, split éclate un
fichier en fichiers de 1000 lignes ayant pour nom xaa, xab...
- Par exemple, pour éclater le fichier /etc/passwd en fichier(s) de 12 lignes:
previous next
Commentaires de cette page
dans le polycopié de cours
La commande sort est capable de distinguer des
champs et de limiter le tri à des portions de lignes. La notion de champ
correspond à des chaînes de caractères séparées les unes des autres par un
caractère séparateur qui est par défaut espace ou tabulation mais que
l’on peut remplacer par un autre caractère x grâce à l’option -tx (et non -dx comme avec
cut). Pour effectuer le tri seulement sur une
portion de la ligne, on utilise l’option -k
d,f (d et f entiers) qui signifie tri sur la portion comprise entre
le champ d et le champ f inclus. Si on ne précise pas de position de fin
(-k d), le tri porte alors sur la portion
comprise à partir du champ d et jusqu’à
la fin de la ligne. Lorsque le critère de tri choisi entraîne une égalité entre
deux lignes, celles-ci sont alors classées selon les critères par défaut. Mais
on peut donner plusieurs critères en précisant plusieurs portions. Pour un tri
sur plusieurs portions, les choix effectués par les options (tri numérique,
inversé...) s’appliquent à toutes les portions, mais on peut préciser des
critères spécifiques à chaque portion en ajoutant un type aux positions qui la
définissent (par exemple, -k 3,3 -k 5n). La
commande sort possède de nombreuses autres
options dont celle qui permet de fixer le nom du fichier pour le stockage des
résultats, au lieu de la sortie standard.
Pour la commande split, on
peut également choisir une taille n (autre que
1000) pour chaque portion grâce à l’option -n. Certaines versions de split offrent une option (-b) permettant un découpage en tranches de n octets (-b n), de
n kilo-octets (-b
nk) ou de n méga-octets (-b nm).
L’illustration interactive en mode commande qui suit
vous présente des exemples d’utilisation de la commande sort. Vous n’allez voir que la deuxième des quatre
parties de cette illustration interactive qui couvre le contenu de plusieurs
pages du cours.
« Commande “sort” »
INF, Télécom SudParis, CSC 3001,
Sept. 2014
|
|