GNU/Linux >> Tutoriels Linux >  >> Linux

Top 20 des commandes sed à utiliser

Bonjour les amis. La commande sed est une commande surutilisée par les administrateurs système du monde entier. Il est essentiellement utilisé pour remplacer texte par texte dans un fichier texte avec une seule commande. C'est pourquoi, aujourd'hui, nous allons vous présenter le Top 20 des commandes sed. Pour cela, nous allons examiner les plus utiles et les plus courants.

Top 20 des commandes sed à utiliser

Remplacer une chaîne par une autre chaîne

La commande sed est utilisée pour remplacer les chaînes. Mais il est si flexible que nous pouvons personnaliser l'exécution en fonction de nos besoins.

Dans un fichier texte pour changer la chaîne macOS vers Linux il faudrait courir

sed 's/macOS/Linux/' [file]

Ensuite, vous pouvez adapter la commande par les chaînes que vous voulez.

2.- Remplacer un certain nombre d'occurrences d'une chaîne

La commande ci-dessus ne remplace la chaîne qu'une seule fois. Vous pouvez spécifier l'ordre dans lequel la chaîne est remplacée.

sed 's/macOS/Linux/2' [file]

Dans ce cas, il remplacera uniquement la deuxième occurrence.

3.- Remplacer toutes les occurrences d'une chaîne

sed 's/macOS/Linux/g' [file]

4.- Remplacer une chaîne sur un numéro de ligne spécifique.

Une autre option utile consiste à remplacer une chaîne de caractères sur un numéro de ligne. Ceci est utile si vous connaissez bien le fichier.

sed '[line] s/macOS/Linux/' [file]

Par exemple, pour remplacer une chaîne sur la troisième ligne.

sed '3 s/macOS/Linux/' [file]

5.- Remplacer des caractères dans une plage

Pour remplacer des caractères mais dans une plage de lignes spécifiée dans un fichier.

sed '30,40 s/macOS/Linux/g' [file]

Dans ce cas, la chaîne sera remplacée uniquement entre les lignes 30 et 40.

6.- Insérer des sauts de ligne dans les fichiers

Il est également possible d'insérer un saut de ligne vide. Pour y parvenir, vous devez exécuter.

sed G [file]

Très utile dans les dossiers où tout est rapproché.

7.- Supprimer des lignes d'un fichier

Bien que la commande sed soit utilisée pour remplacer des chaînes, vous pouvez en fait faire beaucoup de choses avec. L'un d'eux consiste à supprimer une ligne. Pour ce faire, exécutez.

sed 'nd' [file]

Remplacer n avec le numéro de la ligne à supprimer.

8.- Afficher l'intégralité du fichier à l'exception d'une certaine plage de lignes.

Vous pouvez également afficher un fichier moins une plage de lignes.

sed '20,35d' [file]

Dans ce cas, tout le fichier sera affiché sauf de la ligne 20 à 35.

9.-Afficher une plage spécifique de lignes dans un document

Si vous souhaitez afficher une plage spécifique dans le fichier, vous devez exécuter la commande suivante :

sed -n 'Ni,Nlp' [file]

Où vous devez remplacer Ni avec le numéro de la ligne de départ et Nl avec la fin.

sed -n '5,15p' [file]

Dans ce cas, il affichera la plage des lignes 5 à 15.

10.- Supprimer les lignes correspondantes dans un fichier texte

Vous pouvez également supprimer des lignes qui correspondent à une chaîne de texte spécifique.

sed '/macOS/d' [file]

Dans ce cas, toutes les lignes contenant le mot macOS sera supprimé.

11.- Imprimer le numéro de ligne dans le fichier

Pour imprimer le numéro de ligne dans un fichier texte avec la commande sed . Pour y parvenir, nous n'avons qu'à exécuter la commande suivante.

sed '=' [file]

De cette façon, lorsque le fichier est imprimé, le numéro de ligne sera affiché.

12.- Supprimer toutes les lignes d'un fichier sauf celles spécifiées.

Vous pouvez désormais supprimer toutes les lignes d'un fichier, à l'exception de celles que vous spécifiez.

sed '15,21!d' [file]

De cette façon, le fichier supprimera toutes les lignes sauf celles de 15 à 21.

13.- Remplacez tous les caractères majuscules par des caractères minuscules en utilisant sed

La casse des majuscules et des minuscules est toujours pertinente lorsqu'il s'agit de fichiers texte. Donc avec sed vous pouvez remplacer tous les caractères majuscules par des caractères minuscules.

sed 's/\(.*\)/\L\1/' [file]

14.- Supprimez toute ligne commençant par une chaîne

Si vous souhaitez supprimer toutes les lignes commençant par une chaîne spécifique, vous pouvez exécuter quelque chose de similaire à ceci

sed '/^macOS/d' [file] 

15.- Remplacer toutes les occurrences d'une chaîne d'une ligne à la fin

Dans ce cas, vous pouvez remplacer une chaîne par une autre d'une certaine ligne jusqu'à la fin de la chaîne

sed '3,$s/macOS/Linux/g' [file]

Dans ce cas, j'ai choisi la ligne 3, mais cela peut être n'importe quelle ligne.

16.- Imprimer une série de lignes à partir d'un fichier

Si vous souhaitez imprimer uniquement une série de lignes, vous pouvez également le faire avec sed comme suit

sed -n '2,10p' [file]

Dans cet exemple, toutes les lignes de 2 à 10 seront imprimées.

Supprimer les lignes vides après chaque ligne dans un fichier

La suppression des lignes vides peut être très utile dans les fichiers de configuration ou d'autres fichiers où nous devons les traiter.

Pour supprimer ces lignes vides, vous pouvez exécuter

sed '/^$/d'[file]

C'est aussi simple que cela.

Mettre en majuscule le premier caractère de chaque mot

C'est l'une des options les plus utiles et les plus utilisées. Vous pouvez remplacer la première lettre de chaque mot par son équivalent en majuscule.

Pour y parvenir, il suffit d'exécuter cette commande

sed 's/\([a-z]\)\([a-zA-Z0-9]*\)/\u\1\2/g'

C'est sans effort.

Supprimer la dernière ligne d'un fichier

Il y a des changements que nous devons faire dans un fichier de configuration, et nous le plaçons généralement dans la dernière ligne. Et si nous voulons le supprimer ? Eh bien, vous pouvez supprimer la dernière ligne d'un fichier en exécutant

sed '$d' [file]

20.- Afficher l'aide de la commande sed

Enfin, vous pouvez consulter l'aide de la commande execute

sed --help

Et vous obtiendrez un écran de sortie comme celui-ci.

Merci d'avoir lu et j'espère que vous l'avez aimé et qu'il vous sera utile pour votre travail.

page de commande sed

Plus de commandes de terminal


Linux
  1. 5 raisons d'utiliser Linux en 2020

  2. Comment utiliser les commandes d'historique de Bash

  3. Utilisation des commandes Sed, ex et perl pour rechercher et remplacer un texte sous Linux

  4. Comment remplacer une chaîne dans un ou plusieurs fichiers ?

  5. Comment utiliser Sed ou Ex pour remplacer un bloc (code multiligne) par un nouveau bloc de texte (code) ?

Comment utiliser la commande SED pour rechercher et remplacer une chaîne dans des fichiers

Comment utiliser la commande TOP

COMMENT UTILISER L'EDITEUR SED

Mes 10 meilleures commandes Linux que j'utilise tous les jours (en 2021)

Top 30 des commandes Linux

Comment utiliser Sed pour rechercher et remplacer une chaîne dans un fichier