Table des matières

cut

Introduction

La commande cut permet la recherche par sélection de sections spécifiques dans un fichier.

Pour les exemples, nous utiliserons le fichier /etc/passwd.
Affichage sans sélection avec la commande less :

less /etc/passwd
retour de la commande
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
.../...

Option -c

Afficher uniquement les caractères aux positions indiquées dans la liste de caractères.

Option Signification
-c1-5 Permet de sélectionner les colonnes 1 à 5.
-c14- Permet de sélectionner de la colonne 14 à la dernière.
-c10-14Permet de sélectionner de la colonne 10 à la colonne 14
-c1-3,14-18 Permet de spécifier plusieurs plages de colonnes.

Exemple option -c :

cut -c1 /etc/passwd

Affichera la première colonne du fichier etc/passwd.

cut -c1 /etc/passwd
retour de la commande
r
d
b
s
s
g
.../...

Options -d et -f

À savoir.

Par défaut, le délimiteur est l'espace ou la tabulation.

  • Si dans le fichier à traiter le séparateur n'est pas la tabulation, il faut indiquer le séparateur avec l'option -d.
  • Les options -d et -f s'utilisent toujours en complément l'une de l'autre.

-Si on utilise l'option -d seule, un message d'erreur apparaît,
-Si on utilise l'option -f seule, la totalité du ficher s'affiche sans extraire de champ, ce qui n'a aucun intérêt.

  • Il est possible de sélectionner plusieurs champs.
cut -d'délimiteur' -f 1 délimiteur et champ délimité n°1
cut -d'délimiteur' f 2,6,… délimiteur et champs délimités n°2 et n°6

Option -d -f : afficher un champ

Dans le fichier /etc/passwd, afficher le sixième champ par ligne, dont le séparateur de champs est le caractère double point (:) :

cut -d: -f6 /etc/passwd
retour de la commande
/root
/usr/sbin
/bin
/dev
/bin
/usr/games
.../...

Option -d -f : afficher plusieurs champs

Dans le fichier :etc/passwd, afficher le premier et le sixième champs par ligne, avec comme séparateur de champ le caractère double point (:) :

cut -d':' -f 1,6 /etc/passwd
retour de la commande
root:/root
daemon:/usr/sbin
bin:/bin
sys:/dev
games:/usr/games
.../...
Si l'on inverse l'ordre des champs sélectionnés -f 6,1, cut les affichera malgré tout dans l'ordre du fichier.
1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !