Fonctionnement de sed
Le programme sed est un éditeur de flux qui reçoit son entrée de l'entrée standard, modifie cette entrée comme indiqué par les commandes d'un fichier de commandes et écrit le flux résultant dans la sortie standard.
Si vous ne fournissez pas de fichier de commandes et que vous n'utilisez pas d'indicateurs avec la commande sed , le programme sed copie l'entrée standard dans la sortie standard sans modification. L'apport au programme provient de deux sources:
| Programme | Descriptif |
|---|---|
| Flux d'entrée | Flux de caractères ASCII provenant d'un ou de plusieurs fichiers ou entré directement à partir du clavier. Ce flux correspond aux données à éditer. |
| Commandes | Ensemble d'adresses et de commandes associées à exécuter, sous la forme générale suivante:Les paramètres Line1 et Line2 sont appelés adresses. Les adresses peuvent être des modèles à mettre en correspondance dans le flux d'entrée ou des numéros de ligne dans le flux d'entrée. |
Vous pouvez également entrer des commandes d'édition avec la commande sed à l'aide de l'indicateur -e .
Lors des éditions sed , il lit le flux d'entrée une ligne à la fois dans une zone de mémoire appelée espace de modèle. Lorsqu'une ligne de données se trouve dans l'espace de canevas, sed lit le fichier de commandes et tente de faire correspondre les adresses du fichier de commandes avec les caractères de l'espace de canevas. S'il trouve une adresse qui correspond à quelque chose dans l'espace de canevas, sed exécute la commande associée à cette adresse sur la partie de l'espace de canevas qui correspond à l'adresse. Le résultat de cette commande modifie le contenu de l'espace de canevas et devient ainsi l'entrée de toutes les commandes suivantes.
Lorsque sed a tenté de faire correspondre toutes les adresses du fichier de commandes avec le contenu de l'espace de canevas, il écrit le contenu final de l'espace de canevas dans la sortie standard. Il lit ensuite une nouvelle ligne d'entrée à partir d'une entrée standard et démarre le processus au démarrage du fichier de commandes.
Certaines commandes d'édition modifient le mode de fonctionnement du processus.
Les indicateurs utilisés avec la commande sed peuvent également modifier l'opération de la commande.