Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:sed-par-la-methode-structuraliste [27/07/2014 15:52] Hypathie [Les rapport d'implication /adressages/ <=> commandes de sed] |
utilisateurs:hypathie:tutos:sed-par-la-methode-structuraliste [27/07/2014 16:27] Hypathie [La commande s] |
||
---|---|---|---|
Ligne 432: | Ligne 432: | ||
==="i" : insertion avant la ligne d'adressage=== | ==="i" : insertion avant la ligne d'adressage=== | ||
<code user> | <code user> | ||
- | sed '1i\Ton sentiment comme atmosphère' sed-cmd | + | sed -i '1i\Ton sentiment comme atmosphère' sed-cmd |
+ | </code> | ||
+ | <code user> | ||
+ | cat sed-cmd | ||
</code> | </code> | ||
- | <code> | ||
Ton sentiment comme atmosphère | Ton sentiment comme atmosphère | ||
automne | automne | ||
Ligne 455: | Ligne 457: | ||
=== "a" : ajout après l'adressage=== | === "a" : ajout après l'adressage=== | ||
<code user> | <code user> | ||
- | sed '1a\ ' sed-cmd | + | sed -e '1a\ ' -e '2,$s/^/ /' -i sed-cmd |
+ | </code> | ||
+ | <code user> | ||
+ | cat sed-cmd | ||
</code> | </code> | ||
<code> | <code> | ||
- | automne | + | Ton sentiment comme atmosphère |
- | mon bel automne | + | automne |
- | dans les vergers | + | mon bel automne |
- | du fond du ciel | + | dans les vergers |
- | les éperviers | + | du fond du ciel |
- | de tes yeux planent | + | les éperviers |
- | tes feuilles | + | de tes yeux planent |
- | tes fruits, ta pomme | + | tes feuilles |
- | et le cerf, et son brame | + | tes fruits, ta pomme |
- | à jamais aimés | + | et le cerf, et son brame |
- | de l'homme | + | à jamais aimés |
- | en ton cheveu | + | de l'homme |
- | me donnent | + | en ton cheveu |
- | et des langueurs | + | me donnent |
- | et son adieu | + | et des langueurs |
+ | et son adieu | ||
</code> | </code> | ||
Ligne 491: | Ligne 497: | ||
<code user> | <code user> | ||
s/motif/substitut/ | s/motif/substitut/ | ||
- | -> si motif = une regexp | + | -> si motif = une E.R |
-> alors subtitut = une chaîne de caractère | -> alors subtitut = une chaîne de caractère | ||
</code> | </code> | ||
- | >Pour Regexp | + | >Pour //E.R// |
>On peut utiliser la syntaxe habituelle, ou la syntaxe étendue avec l'option ''sed -r''. | >On peut utiliser la syntaxe habituelle, ou la syntaxe étendue avec l'option ''sed -r''. | ||
>Voir : [[utilisateurs:hypathie:tutos:sed-et-les-expressions-rationnelles]] | >Voir : [[utilisateurs:hypathie:tutos:sed-et-les-expressions-rationnelles]] | ||
Ligne 614: | Ligne 620: | ||
La commande ''s'' supporte les [[utilisateurs:hypathie:tutos:sed-par-la-methode-structuraliste?&#les-adressages-universaux|adressages universaux]].\\ | La commande ''s'' supporte les [[utilisateurs:hypathie:tutos:sed-par-la-methode-structuraliste?&#les-adressages-universaux|adressages universaux]].\\ | ||
Elle permet en plus de nouveaux types d'adressage. | Elle permet en plus de nouveaux types d'adressage. | ||
- | ===Remarque sur l'adressages mixtes : 'n,/regexp/' ou '/regexp/,n' === | + | ===Remarque sur l'adressages mixtes : 'n,/E.R./' ou '/E.R./,n' === |
- | __1) 'n,/regexp/s/chaineA/chaineB'__ | + | __1) 'n,/E.R./s/chaineA/chaineB'__ |
''n'' est un nombre entier. | ''n'' est un nombre entier. | ||
- | On remplace chaîneA par chaîneB de la ligne ''n'' à la ligne comportant /regexp/.\\ | + | On remplace chaîneA par chaîneB de la ligne ''n'' à la ligne comportant /E.R./.\\ |
* Préparation : fichier "sed1.txt | * Préparation : fichier "sed1.txt | ||
Ligne 644: | Ligne 650: | ||
</code> | </code> | ||
- | __2) '/regexp/ns/chaîneA/chaîneB/'__ | + | __2) '/E.R./ns/chaîneA/chaîneB/'__ |
* Substitution à partir de la chaîne "orange" jusqu'à la ligne n° 5 | * Substitution à partir de la chaîne "orange" jusqu'à la ligne n° 5 | ||
Ligne 661: | Ligne 667: | ||
<note important> | <note important> | ||
- | Il faut trois "genres d'objets". Car si /regexp/ d'adressage correspond à chaîne, alors l'indication ''n'' n'arrêtera pas la substitution. | + | Il faut trois "genres d'objets". Car si /E.R./ d'adressage correspond à chaîne, alors l'indication ''n'' n'arrêtera pas la substitution. |
<code user> | <code user> | ||
sed '/[[:digit:]]/,3s/[[:digit:]]/GAGA/' sed1.txt | sed '/[[:digit:]]/,3s/[[:digit:]]/GAGA/' sed1.txt |