Sous linux, la commande cut permet de filtrer les colonnes d'un fichier texte.
Cette commande est très pratique pour effectuer des traitements sur des fichiers de logs ou encore des fichiers csv.
Selection de colonne avec cut
Dans l'exemple suivant je vais vous montrer comment sélectionner un champ dans le fichier password.
En changeant le délimiteur de cut il est possible d'effectuer le même genre de traitement sur tous types de fichier texte (csv,logs ...).
La commande suivante affiche la colonne 1 (nom de l'utilisateur) et la colonne 6 (chemin du répertoire de home) du fichier /etc/passwd :
pcr@home:~$ cut -d: -s -f1,6 /etc/passwd
root:/root
bin:/bin
man:/var/cache/man
mail:/var/mail
news:/var/spool/news
uucp:/var/spool/uucp
pcr:/home/pcr
- d : permet de changer le délimiteur (caractère séparant les colonnes)
- f : liste des champs séparés par des virgules à afficher pour chaque ligne . La valeur "1,6" sélectionne les colonne 1 et 6,et la valeur "1,3-6" affiche la colonne 1 et les colonnes de 3 à 6 inclues.
Image : ctoverdrive