Appliquer la notion

On souhaite trier les notes d'un fichier CSV donné ici.

On voit que le format de ce fichier est le suivant pour chaque ligne :

  • en premier un prénom

  • en second, séparé par une virgule, une note (sur 20)

L'objectif est d'afficher la liste des notes par ordre croissant dans le terminal.

On pourra s'appuyer sur la commande cut qui permet de découper chaque ligne d'un fichier selon un délimiteur précis et de restituer certains champs.

Question

En lisant le manuel des deux commandes et en utilisant un pipe, donnez une commande permettant d'afficher la liste des notes, uniquement, dans l'ordre croissant.

Indice

cut permet de découper les lignes selon les virgules à l'aide de l'option -d","

Indice

cut permet de restituer uniquement les notes, c'est à dire la deuxième colonne, avec l'option -f2

Solution

On utilise la commande suivante.

1
$ cut -d"," -f2 notes.csv | sort -n
2
5
3
8
4
8
5
10
6
12
7
15
8
18
9
19

cut -d"," permet de découper notre fichier CSV en colonnes en utilisant la virgule comme séparateur. L'option -f2 permet de récupérer la seconde colonne, c'est à dire la liste des notes.

À l'aide d'un pipe on redirige cette sortie sur la commande sort qui permet de trier par ordre croissant avec l'option -n.