Maison > Tutoriel système > Linux > Maîtriser la manipulation du texte avec la commande SED

Maîtriser la manipulation du texte avec la commande SED

Joseph Gordon-Levitt
Libérer: 2025-03-16 09:48:16
original
1010 Les gens l'ont consulté

Maîtriser la manipulation du texte avec la commande SED

L'interface de ligne de commande Linux fournit une multitude d'outils de traitement de texte, l'un des outils les plus puissants est la commande sed . sed est l'abréviation de Stream Editor, un outil multifonctionnel qui permet un traitement complexe des fichiers texte et des flux.

Qu'est-ce que SED?

sed est un éditeur de texte non interactif qui exploite des fichiers d'entrée ou de texte de tuyau. En fournissant des directives, vous pouvez le laisser modifier et traiter le texte dans un fichier ou un flux. Les cas d'utilisation les plus courants sed incluent la sélection du texte, le remplacement du texte, la modification des fichiers d'origine, l'ajout de lignes au texte ou la suppression des lignes du texte. Il peut être utilisé à partir de la ligne de commande dans Bash et d'autres shells de ligne de commande.

Syntaxe de commande SED

La syntaxe de la commande sed contient trois parties principales:

  1. Options: la sortie de ces commandes de contrôle.
  2. Script: Cela contient une liste de commandes à exécuter.
  3. Fichier d'entrée: il s'agit du fichier que vous utilisez la commande sed .

S'il n'y a pas de nom de fichier, le script fonctionnera sur les données d'entrée standard. Vous pouvez également exécuter la commande sed sans utiliser d'options. La syntaxe de base est la suivante:

sed 选项[脚本] [输入文件名]

Comparaison entre SED et AWK

sed n'est pas le seul outil de traitement de texte dans l'écosystème Linux. Un autre utilitaire puissant est awk . Bien que les deux traitent du texte, ils ont des différences clés:

  • sed est bon pour analyser et convertir du texte dans un langage simple et simple, ce qui le rend simple, limité mais facile à utiliser.
  • awk , en revanche, est un outil de traitement de texte et d'écriture de programmes puissants qui apparaissent sous forme d'instruction. Il est plus complexe, polyvalent et plus puissant que sed , mais aussi plus complexe.

Explorez SED avec des exemples

Faisons de la façon dont sed fonctionne avec quelques exemples pratiques. Pour tous ces exemples, supposons que nous ayons un fichier nommé ik.txt . Notez que sed ne modifie pas le fichier d'origine par défaut. Toutes les modifications seront affichées dans la sortie, mais le fichier d'origine restera le même.

L'une des opérations les plus courantes en remplacement de texte sed est le remplacement du texte. Cela se fait à l'aide de la commande s . Par exemple, pour remplacer la première instance de schéma abc par un autre schéma def , utilisez:

sed s/abc/def/ ik.txt

Ici, la première instance d' abc dans chaque ligne sera remplacée par def . Si vous souhaitez remplacer la troisième instance du motif, vous pouvez utiliser:

sed s/abc/z/3 ik.txt

Remplacement global En remplacement global, toutes les instances du motif sont remplacées. Cela se fait en ajoutant g à la commande de remplacement. Pour remplacer toutes les instances abc par XYZ , utilisez:

sed s/abc/XYZ/g ik.txt

Vous pouvez également commencer le remplacement global avec la nième instance du motif en utilisant /ng . Par exemple, pour remplacer toutes les instances abc par XYZ à partir de la troisième instance, utilisez:

sed s/abc/XYZ/3g ik.txt

En bref, la commande sed dans Linux est un éditeur de flux puissant qui peut effectuer plusieurs opérations sur les fichiers texte et les flux. Il ne fournit pas d'interface interactive, mais exploite des fichiers d'entrée ou de texte de pipeline en fonction des instructions que nous fournissons. La syntaxe de cette commande est relativement simple et se compose de trois parties: options, un script contenant la commande Linux à exécuter et un nom de fichier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal