La commande couper
La commande cut est le plus souvent utilisée pour sélectionner des colonnes de données uniques à partir d'une entrée séparées par un seul caractère, comme un fichier /etc/passwd. Par exemple, la commande cut est utilisée pour extraire les colonnes/caractères spécifiés d'un morceau de texte, qui est donné comme suit :
- -c :Spécifie le filtrage des caractères
- -d :Spécifie le délimiteur pour les champs
- -f :Spécifie le numéro de champ
Exemples de commandes Couper
Voici quelques exemples illustrant l'utilisation de la commande cut :
Exemple 1
Commençons par un exemple simple d'extraction d'une colonne spécifique du fichier /etc/passwd. Comme les champs du fichier /etc/passwd sont délimités par le délimiteur " :(deux-points)", nous utiliserons l'option "-d :" dans la commande.
# cut -d: -f6 /etc/passwd
Dans cet exemple, -d spécifie le délimiteur ou la variable de séparation, dans ce cas un deux-points, et -f spécifie le numéro du champ (ou de la colonne), en commençant par 1.
Exemple 2
Nous pouvons également filtrer plusieurs colonnes du fichier /etc/passwd en utilisant les index séparés par des virgules. Par exemple :
# cut -d: -f1,3 /etc/passwd
L'écran contiendra le nom de connexion et l'ID utilisateur.
Exemple 3
Nous pouvons également spécifier les numéros de champ avec des plages séparées par des tirets. Nous pouvons également combiner les index séparés par des virgules et les plages séparées par des tirets pour filtrer les colonnes. Par exemple :
# cut -d: -f1,3-4 /etc/passwd
Exemple 4
Nous pouvons laisser l'un des nombres hors d'une plage, pour signifier « jusqu'à » ou « à partir de ». Par exemple, pour filtrer les colonnes "jusqu'à 2", utilisez la commande ci-dessous :
# cut -d: -f-2 /etc/passwd
De même, pour afficher les champs de 6 à la fin, utilisez la commande ci-dessous :
# cut -d: -f6- /etc/passwd
Exemple 5
Cependant, la coupe n'est pas limitée aux données délimitées. Il peut également diviser le nombre de caractères avec -c ou les octets avec -b. Cela peut être un moyen utile d'obtenir uniquement un certain nombre ou une certaine plage d'octets par ligne. Comme illustré dans l'exemple ci-dessous, la sortie de la commande de date est envoyée en tant qu'entrée à la commande de coupe et seuls les trois premiers caractères sont imprimés à l'écran, comme suit :
# date | cut -c1-3 Wed
La commande de date sans la commande de coupe imprimerait une sortie comme indiqué ci-dessous :
# date Wed Dec 5 15:24:12 UTC 2018