Écrivez une commande sed
transformant la chaîne « moins
» en « plus
».
Appliquez-la à « Vous aurez moins de budget
».
bash sed -e 's/moins/plus/g'
É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
.
bash sed -f decalage.sed
bash # 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.
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
.
Écrivez une commande sed
qui affiche uniquement le début de chaque ligne du fichier /etc/passwd
jusqu'au premier caractère :
.
bash sed -e 's/^\([^:]*\).*$/\1/' /etc/passwd
> 📗 On aurait pu aussi utiliser la commande
cut
.
É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>>.
).
bash sed -e 's/"\([^"]*\)"/<<\1>>/g'