préparation à la certification LPIC1 version 3.5 en français
Chapitre 2 : Présentation de Linux
Introduction à GNU/Linux
Partie 11 : sed
Mise en pratique des expressions régulières avec sed.
Supports créés par Noël Macé sous Licence Creative Commons BY-NC-SA.
LPIC1 07 07 introduction à la gestion des disques durs
LPIC1 02 11 sed
1. Linux LPIC1 – Comptia Linux+ noelmace.com
Noël Macé
Formateur et Consultant indépendant expert Unix et FOSS
http://www.noelmace.com
Sed
Commandes GNU & Unix
Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
2. Linux LPIC1 – Comptia Linux+ noelmace.com
Plan
• Pour quoi faire ?
• Syntaxe
• Substitution
• Drapeaux
• Autres commandes
3. Linux LPIC1 – Comptia Linux+ noelmace.com
Pour quoi faire ?
• modifier le contenu
d'un fichier
d'un flux
• ligne par ligne
• en fonction d'expressions régulière
4. Linux LPIC1 – Comptia Linux+ noelmace.com
Syntaxe
$ sed [options] commande [fichier…]$ sed [options] commande [fichier…]
$ sed [options] –f script [fichier…]$ sed [options] –f script [fichier…]
• Options :
-e : permet d’enchaîner plusieurs commandes à la suite
-r : utilisation des expressions régulières étendues
-i : effectuer les modifications directement dans le fichier
5. Linux LPIC1 – Comptia Linux+ noelmace.com
Substitution
• s/modèle/remplacement/drapeau(x)
• Exemple :
$ sed s/^#$/#commentaire/ monfichier$ sed s/^#$/#commentaire/ monfichier
6. Linux LPIC1 – Comptia Linux+ noelmace.com
Drapeaux
g global toutes les occurrences
N
(nombre)
_ nième occurrence
w write écrire les modifications dans un fichier
p print afficher la ligne modifiée (avec –n)
e evaluate exécution de commande
• Exemples
$ sed 's/A/B/g' monfichier$ sed 's/A/B/g' monfichier
$ sed "s/.*5/echo '$A'/e" monfichier$ sed "s/.*5/echo '$A'/e" monfichier
$ sed 's/A/a/gw rslt' monfichier$ sed 's/A/a/gw rslt' monfichier
7. Linux LPIC1 – Comptia Linux+ noelmace.com
Autres commandes
commande usage exemple
q quitter 3q
d effacer 3d
p affichage (avec –n) 3p
itexte insérer le texte 3imachin
atexte ajouter le texte 3amachin
ctexte remplacer par le texte 3cmachin
= afficher 3=
8. Linux LPIC1 – Comptia Linux+ noelmace.com
Ce qu’on a couvert
• Comprendre les principes de base de sed.
FIN
9. Linux LPIC1 – Comptia Linux+ noelmace.com
Licence
Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à :
Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
Vous êtes libre de :
partager — reproduire, distribuer et communiquer cette œuvre
remixer — adapter l’œuvre
Selon les conditions suivantes :
Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre
originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins
d'en demander expressément la permission).
Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention
première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une
autorisation explicite de l'auteur est requise.
Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de
distribuer votre création que sous une licence identique ou similaire à celle-ci.
Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une
licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs
vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration
de ce support.
10. Linux LPIC1 – Comptia Linux+ noelmace.com
Licence
Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à :
Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
Vous êtes libre de :
partager — reproduire, distribuer et communiquer cette œuvre
remixer — adapter l’œuvre
Selon les conditions suivantes :
Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre
originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins
d'en demander expressément la permission).
Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention
première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une
autorisation explicite de l'auteur est requise.
Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de
distribuer votre création que sous une licence identique ou similaire à celle-ci.
Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une
licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs
vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration
de ce support.