Comment utiliser la commande CUT sous Linux

L'utilisation de commandes sous Linux est l'un des moyens les plus pratiques pour gérer de nombreuses tâches, que ce soit au niveau des fichiers, des services ou des processus, et le meilleur à ce sujet est que nous avons plusieurs commandes chacune avec sa propre fonction particulière.

L'une de ces commandes que nous pouvons utiliser fréquemment est la commande cut qui est implémentée dans les systèmes d'exploitation Unix, et le but de cette commande est de supprimer ou de couper des sections de chaque ligne d'un fichier spécifié.

L'utilisation de cette commande peut être utilisée pour couper des parties d'une ligne soit par position d'octet, caractère ou champ selon le besoin de la casse de sorte qu'avec la commande cut il sera possible d'extraire une partie d'un texte basé sur certaines variables à utiliser.

Solvetic expliquera en détail comment vous pouvez utiliser la commande cut et lui donner une utilisation appropriée dans les environnements Linux, dans ce cas nous travaillons sur Ubuntu 19.04.

1. Couper la commande Linux


La syntaxe de base pour l'utilisation de cette commande est la suivante :
 couper OPTION… [FICHIER]… 
Parmi les options disponibles pour cette commande, nous trouvons les suivantes et vous décidez laquelle utiliser :

Cette option répertorie et sélectionne uniquement les octets de chaque ligne en fonction de ce que nous indiquons dans LIST. LISTE peut faire référence à un octet, un ensemble d'octets ou une plage d'octets

 -b, --bytes = LISTE

Cette option ne sélectionne que les caractères de chaque ligne en fonction de la LISTE
 -c, --characters = LISTE

Il est possible d'utiliser le caractère DELIM pour être utilisé comme délimiteur de champ
 -d, --delimiter = DELIM

En utilisant cette option, nous allons sélectionner uniquement les champs de chaque ligne ou nous pouvons imprimer les lignes qui ne contiennent pas de caractères délimiteurs
 -f, --fields = LISTE

C'est une option de compatibilité
 -n

Cette option complète l'ensemble des octets, caractères ou champs sélectionnés
 --complément

N'imprime pas les lignes qui ne contiennent pas de délimiteurs
 -s, --only-delimited

Il est possible d'utiliser STRING comme chaîne de délimitation de la sortie des résultats
 --output-delimiter = CHAINE

Affiche l'aide pour la commande de coupe
 --aider

On peut voir la version de la commande cut utilisée
 --version

2. Comment utiliser la commande cut sous Linux

Étape 1
Pour commencer, on peut visualiser le contenu d'un fichier texte situé sur le bureau et avec lequel on verra le travail de la commande cut, ce contenu peut être visualisé à l'aide de la commande cat :

Étape 2
Chaque liste sous Linux se compose d'un entier, d'une plage d'entiers ou de plusieurs plages d'entiers séparés par des virgules, avec cut les options de lecture suivantes peuvent être utilisées.

  • N le Nième octet, caractère ou champ, compté à partir de 1.
  • N- du Nième octet, caractère ou champ, jusqu'à la fin de la ligne.
  • N-M du Nième au Mième octet, caractère ou champ (inclus).
  • -M du premier octet au mième octet, caractère ou champ

Si nous exécutons cut sans paramètre, nous verrons le résultat suivant :

3. Comment utiliser le paramètre -b (octet) Linux


La première utilisation que nous ferons de cut est avec le paramètre -b (byte) qui extrait les octets que nous indiquons, pour cela l'option -b doit être avec la liste des numéros d'octets séparés par des virgules.

NoterLa plage d'octets peut être indiquée par un tiret (-)

Il est important de garder à l'esprit que les tabulations et les espaces vides sont considérés comme un caractère à 1 octet pour le garder à l'esprit lors de la définition de la plage ou de la limite.

Étape 1
Par exemple, nous allons exécuter ce qui suit :

 coupe -b 1,2,3 Solvetique

Étape 2
Il existe un moyen spécial qui nous permet de sélectionner les octets du début à la fin de la ligne, pour cela, nous pouvons exécuter ce qui suit :

 coupe -b 1- Solvetique

Étape 3
Ici la valeur 1- indique la sélection du premier octet à la fin de l'octet d'une ligne dans le fichier, maintenant, nous pouvons exécuter ce qui suit :

 coupe -b -4 Solvetique

Dans ce cas, nous avons extrait les 4 premiers octets de la ligne.

4. Comment utiliser le paramètre Linux -c (colonne)


Un autre des paramètres d'utilisation est la sélection de la colonne ©, cela nous permet de sélectionner un jeu de caractères en fonction du besoin, sa syntaxe d'utilisation est la suivante :
 couper -c [(k) - (n) / (k), (n) / (n)] fichier
Les valeurs ici peuvent être une liste de nombres séparés par des virgules ou une plage de nombres séparés par un tiret.

Dans la syntaxe donnée, la lettre k indique la position initiale du caractère et la lettre n fait référence à la position finale du caractère dans chaque ligne donnée.

Étape 1
Nous allons exécuter ce qui suit et voir ce qui se passe :

 coupe -c 2,4,6 Solvetique

Étape 2
Dans ce cas on voit que les caractères sont extraits aux positions que nous avons indiquées, mais il est possible d'afficher une plage de caractères de la manière suivante :

 couper -c 2-5 Solvetique

Étape 3
Comme le paramètre précédent, nous pouvons afficher tous les octets de la ligne en utilisant l'option suivante :

 couper -c 1- Solvetique
Ou nous pouvons extraire une plage définie comme suit :
 couper -c -3 Solvetique

5. Comment utiliser le paramètre Linux -f (champ)


Lorsque nous utilisons le paramètre -c, il est utilisé pour les lignes avec une extension déjà définie, mais comme dans les systèmes Linux, il existe des fichiers sans limitation de longueur.

Étape 1
Il faut découper les données par champs au lieu d'utiliser les colonnes, là entre en jeu le paramètre -f, qui utilise la syntaxe suivante :

 cut -d "délimiteur" -f (champ #) fichier
Nous pouvons exécuter les opérations suivantes :
 cut -f 1 Solvetic

Étape 2
Là, nous pouvons ajouter le paramètre -d, qui prend l'espace comme séparateur ou délimiteur de champ :

 cut -d "" -f 1 Solvetique

Étape 3
Maintenant, nous pouvons afficher plus de champs si c'est le cas en utilisant la plage avec un tiret :

 cut -d "" -f 1-3 Solvetique

6. Comment utiliser le paramètre Linux -complément

Étape 1
Cette valeur complète la sortie des résultats de la coupe et peut être utilisée avec -f ou -c sans problème, par exemple, exécutons :

 cut --complement -d "" -f 1 Solvetic

Étape 2
Ou nous pouvons exécuter :

 cut --complément -c 4 Solvetic
Cela coupera le quatrième caractère sur les lignes du fichier sélectionné :

7. Comment utiliser le paramètre Linux -output-delimiter


Il remplit la même fonction que le délimiteur d'entrée utilisé avec l'option -d, ce délimiteur peut être édité à l'aide de la syntaxe -output-delimiter = ”delimiter”.
 cut -d "" -f 1,2 Solvetic --output-delimiter = '%'

Là, les espaces sont complétés par le signe %.

8. Comment délimiter les valeurs d'autres répertoires Linux


La commande cut nous permet de délimiter des paramètres dans d'autres répertoires ou fichiers Linux, un exemple en est le répertoire / etc / passwd dans lequel sont hébergées les informations de chaque utilisateur du système, un utilisateur par ligne, et là chacun de ceux-ci les champs sont délimités par deux points (":"), la syntaxe d'un utilisateur est la suivante :
 root:x:0:0:root:/root:/bin/bash
Les données représentées ici sont
  • Nom d'utilisateur
  • Mot de passe (masqué par un x s'il a été crypté)
  • Numéro d'identification d'utilisateur (UID)
  • Numéro d'identification de groupe (GID)
  • commentaires
  • Accueil Annuaire
  • Coquille

Étape 1
Puisque le nom d'utilisateur est le premier champ de la ligne, si nous voulons afficher uniquement ce champ, nous exécuterons :

 cut -f 1 -d ':' / etc / passwd

Étape 2
Maintenant, pour voir des champs supplémentaires, comme l'interface graphique, nous pouvons ajouter la colonne respective :

 cut -f 1,4 -d ':' / etc / passwd

Étape 3
Dans les deux cas, la sortie est limitée par les deux points (:), mais il est possible d'affecter un délimiteur différent à la fois pour l'entrée et la sortie des résultats, par exemple, si la sortie est délimitée par un espace, nous devons exécuter ce qui suit :

 cut -f 1,4 -d ':' --output-delimiter = '' / etc / passwd

Avec la commande cut sous Linux, il est possible d'effectuer diverses activités qui nous permettent de visualiser le contenu d'un fichier de manière beaucoup plus pratique.

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave