Utilisation simple
Écrivez une commande sed transformant la chaîne
moins en
plus. Appliquez-la à Vous aurez
moins de budget.
sed -e 's/moins/plus/g'
Utilisation d'un fichier de commandes
Écrivez un commande sed transformant toutes les lettres
minuscules en leur suivante lexicographique (cas
particulier : z se transforme en
!). Rappel : vous pouvez utiliser un fichier
pour rassembler plusieurs commandes sed.
sed -f decalage.sed
# fichier "decalage.sed"
s/z/!/g
s/y/z/g
s/x/y/g
s/w/x/g
s/v/w/g
s/u/v/g
s/t/u/g
s/s/t/g
s/r/s/g
s/q/r/g
s/p/q/g
s/o/p/g
s/n/o/g
s/m/n/g
s/l/m/g
s/k/l/g
s/j/k/g
s/i/j/g
s/h/i/g
s/g/h/g
s/f/g/g
s/e/f/g
s/d/e/g
s/c/d/g
s/b/c/g
s/a/b/g
Cette solution peut sembler étrange, car les substitutions ne
se font pas dans l'ordre alphabétique mais dans l'ordre
alphabétique inverse. C'est nécessaire car sinon tous les
a se transforment en b, puis tous
les b (y compris ceux qui sont nouvellement
transformés) en c, etc., pour finir par un texte
intégralement composé de lettres a.
Substitution en début de ligne
Écrivez une commande sed qui affiche uniquement le début de
chaque ligne du fichier /etc/passwd jusqu'au
premier caractère :.
sed -e 's/^\([^:]*\).*$/\1/' /etc/passwd
On aurait pu aussi utiliser la commande cut.
Substitution dans toute la ligne
Écrivez une commande sed qui remplace les couples de guillemets
anglais par un couple de guillemets français (Ceci est un
"exemple" qui doit "fonctionner". doit donner Ceci
est un <<exemple>> qui doit
<<fonctionner>>.).
sed -e 's/"\([^"]*\)"/<<\1>>/g'