Syntaxe
cut {-b byte-list, --bytes=byte-list} [-n] [--help] [--version] [file...]
|
cut {-c character-list, --characters=character-list} [--help] [--version] [file...]
|
cut {-f field-list, --fields=field-list} [-d delim] [-s] [--delimiter=delim]
[--only-delimited] [--help] [--version] [file...]
|
Paramètres
Nom |
Description |
-b byte-list |
Ce paramètre permet de seulement afficher les octets aux positions spécifiés. |
-c character-list |
Ce paramètre permet de seulement afficher les caractères aux positions spécifiés. |
-d delim |
Ce paramètre permet d'indiquer le caractère de séparateur a utiliser plutôt que la tabulation. |
-f field-list |
Ce paramètre permet d'indiquer d'afficher la liste des champs spécifiés. Par défaut, les champs sont séparés par des tabulations. |
-n |
Ce paramètre permet d'indiquer qu'il ne faut pas fragmenter les caractères occupant plusieurs octets. |
-s |
Ce paramètre permet d'indiquer qu'il ne faut pas afficher les lignes contenant le caractère de séparateur de champs. |
--bytes=byte-list |
Ce paramètre permet de seulement afficher les octets aux positions spécifiés. |
--characters=character-list |
Ce paramètre permet de seulement afficher les caractères aux positions spécifiés. |
--delimiter=delim |
Ce paramètre permet d'indiquer le caractère de séparateur a utiliser plutôt que la tabulation. |
--fields=field-list |
Ce paramètre permet d'indiquer d'afficher la liste des champs spécifiés. Par défaut, les champs sont séparés par des tabulations. |
--help |
Ce paramètre permet d'afficher l'aide de cette commande et quitte immédiatement après. |
--only-delimited |
Ce paramètre permet d'indiquer qu'il ne faut pas afficher les lignes contenant le caractère de séparateur de champs. |
--version |
Ce paramètre permet d'afficher les informations de version de cette commande et quitte immédiatement après. |
Description
Cette commande permet de supprimer des sections de chaque ligne des fichiers.
Remarques
- Extraction de colonnes avec -f : L'une des utilisations les plus courantes de cut est l'extraction de colonnes spécifiques dans un
fichier ou une sortie de commande. Cela est particulièrement utile pour manipuler des fichiers CSV ou des journaux de bords. L'option -f permet de spécifier les champs
à extraire, basés sur un séparateur donné. Exemple :
cut -d',' -f1,3 fichier.csv
|
Cela extrait la première et la troisième colonne du fichier fichier.csv en utilisant la virgule comme délimiteur.
- Utilisation du délimiteur avec l'option -d : L'option -d permet de définir un séparateur de champ. Par défaut, cut utilise la tabulation
comme délimiteur, mais vous pouvez spécifier n'importe quel caractère comme séparateur. Cela est particulièrement utile pour traiter des fichiers de données structurées
comme des CSV ou des TSV. Exemple :
cut -d':' -f1,2 /etc/passwd
|
Cela extrait les premiers et deuxièmes champs (le nom d'utilisateur et le mot de passe) du fichier /etc/passwd, où les champs sont
séparés par des deux-points.
- Extraction par position de caractère avec -c : L'option -c permet d'extraire des caractères spécifiques à partir de chaque ligne, en fonction
de leur position dans le texte. Cela est utile lorsque vous travaillez avec des fichiers où chaque caractère a une signification particulière, comme dans les fichiers
fixes ou des logs formatés. Exemple :
Cela extrait les cinq premiers caractères de chaque ligne dans fichier.txt.
- Prise en charge des plages avec -f et -c : cut permet de spécifier des intervalles de champs ou de caractères à extraire. Vous pouvez
définir une plage continue ou des éléments spécifiques, ce qui permet une manipulation fine des données. Exemple :
cut -d',' -f2-4 fichier.csv
|
Cela extrait les colonnes 2 à 4 du fichier fichier.csv. De même, pour les caractères :
Cela extrait les caractères 5 à 10 de chaque ligne de fichier.txt.
- Manipulation de fichiers de grande taille : cut est particulièrement efficace pour traiter de grands fichiers, car il fonctionne ligne
par ligne et extrait uniquement les informations demandées, ce qui permet d'économiser de la mémoire et d'améliorer les performances par rapport à d'autres outils
devant charger l'intégralité du fichier en mémoire. Cela le rend utile pour les fichiers de journaux de bord ou les grandes bases de données texte.
- Extraction de données dans des fichiers délimités : cut est souvent utilisé pour travailler avec des fichiers délimités
par des tabulations ou des espaces, comme ceux générés par des programmes ou des outils comme ps, ls, ou df. Cela permet d'extraire des informations spécifiques, comme les
noms de fichiers ou les ID de processus. Exemple :
ps aux | cut -d' ' -f1,11
|
Cela extrait le nom de l'utilisateur (premier champ) et la commande exécutée (onzième champ) de la sortie de ps aux.
- Limitation de cut avec les données non délimitées : L'une des limitations de cut est qu'il ne fonctionne pas bien avec des fichiers non
délimités ou mal formatés, car il repose sur un caractère spécifique pour délimiter les champs. Pour des fichiers complexes ou sans séparateur évident, des outils comme
awk ou sed peuvent être plus adaptés pour la manipulation des données.
- Comparaison avec d'autres outils comme awk : Bien que cut soit très utile pour extraire des colonnes ou des caractères,
awk peut être plus puissant pour les cas d'utilisation plus complexes, où des calculs ou des manipulations avancées sont nécessaires.
Cependant, cut reste une option plus rapide et plus simple pour des extractions simples de données bien structurées. Exemple avec awk :
awk -F',' '{print $1, $3}' fichier.csv
|
Bien qu'il soit plus flexible, awk est aussi plus complexe que cut pour des tâches simples de découpe.
Voir également
Système d'exploitation - Linux - Références de commandes et de programmes - grep
Système d'exploitation - Linux - Références de commandes et de programmes - paste
Dernière mise à jour : Samedi, le 14 novembre 2015