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.
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.
La syntaxe de la commande sed
contient trois parties principales:
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 选项[脚本] [输入文件名]
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. 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!