Modifications

Aller à : navigation, rechercher

Sed

3 662 octets ajoutés, 15 mai 2016 à 11:45
Page créée avec « ==Généralité== Sed est ce que l'on appelle un éditeur de flux, il permet d'éditer n'importe quel fichier écrit (du code, des textes, bref tout ce qui peu s'ouvrir a... »

==Généralité==
Sed est ce que l'on appelle un éditeur de flux, il permet d'éditer n'importe quel fichier écrit (du code, des textes, bref tout ce qui peu s'ouvrir avec un pad)
C'est un outil qui est comparable a [[Awk]].

Sed se contrôle via un terminal !
sed -x ....
Aussi on peut synthétiser une liste d'action dans un fichier que l'on ouvre ensuite via le terminal.

Sed ne sait pas faire de calculs.
Sed n'est pas simple à utiliser pour travailler sur plusieurs ligne en même temps.


==Comment ça marche==
Sed fonctionne par ligne, c'est à dire qu'il va effectuer des actions pour un objet présent sur une ligne puis passer à la ligne suivante. <br/>
Sa fonctionnalité première est d’effectuer plusieurs "Rechercher & Remplacer" complexes, ainsi que de créer des procédures réutilisable par la suite.
*Il peut par exemple dans un texte remplacer tout les termes commençant par R et dont les 3 prochains caractères sont I, U, ou S.

C'est un outil puissant et pratique, néanmoins sa syntaxe est un peu difficile à cerner au tout début, aussi je vous encourage à regarder plusieurs tuto, sur internet en espérant que quelques uns vous parlerons mieux que d'autres.

===Les Paramètres===
Ici nous parlerons des fonctions soit des commandes "sed -x ..."

=====-e expression=====
C'est la principale fonction de sed, elle permet de lancer les commandes que nous verrons en suivant.

sed -e 'commandes' [Fichier d'entrée] > [Fichier de sortie]
Sans fichier de sortie sed affichera le résultat dans le terminal.

=====-f file=====
Aussi une fonction très utilisée puisqu'elle permet de lire une liste de commandes écrites préalablement dans un fichier au format .sed

sed -f [commandes.sed] [fichier d'entrée] > [Fichier de sortie]

=====-i sauvegarde=====
Permet de renommer le fichier d'entrée en fichier.bak et de modifier directement sur le fichier d'entrée.

sed -i".bak" -e ...

=====-s separate=====
Quand plusieurs fichiers sont en entrés, sed les assembles tous à la suite pour travailler. <br/>
Cette commande permet de dissociée les fichiers avec lesquels sed travail.

sed -s
=====-n silent=====
Permet de ne pas afficher dans le terminal le résultat.

sed -n -e ...

===Les commandes===
On attaque maintenant la partie principale du logiciel.

Sed traitera chaque commande pour chaque ligne du fichier d'entré. <br/>

====La structure====
Chaque commande se structure en section, séparé par le caractère "/". Aussi une commande n'est pas simplement définit par une lettre mais par celle-ci ainsi que sa ou ses structures.
1/2/3/4/...

Exemple de commandes à :
*1 section:
4d
Ici on supprime la 4ième ligne

*2 sections:
/M3/d
On supprime les lignes contenant l'objet "M3"

*3 sections:
s/M1/M2/
Ici on cherche les objets "M1" que l'on remplace par "M2"

====Les commandes basiques====
s
d
{;}
q
p
====Les commandes avancés====
=====Les multi-lignes=====
Les commandes multi-lignes repose sur un principe celui de changer l'espace de travail:
Sans ses commandes l'espace de travail de Sed est toujours la ligne matché, ici il va s'agir de rajouter la ligne suivante au sein de l'espace de travail.
N
D

====Les Flags====
{,}
g
N
p
w
I
M

====Les méta-caractères====
^ $ . [] [^]
*
\{i\} \{i,j}
\+ 1,+inf
\? 0,1
====Les syntaxes usuelles====
#
&
\
\( \) et \N
\n
\t
=====Les variables=====
$var

=====Les branches=====
:
b

===Utilisation===


==Liens utiles==
[https://fr.wikipedia.org/wiki/Stream_Editor La page wikipédia] <br/>
[http://www.commentcamarche.net/faq/9536-sed-introduction-a-sed-part-i Un tuto assez complet de Comment ça marche]

[[Catégorie:Logiciels]]
1 004
modifications

Menu de navigation