Solutions du chapitre La commande sed
1. Expressions régulières
a. Exercice 1 : insertion de balises dans un fichier
Soit le fichier dates_cours.txt :
$ cat dates_cours.txt
unix
28-30 jan
17-19 juin
18-20 nov
shell
23 mars
15 juil
7 sep
À l’aide de la commande sed, transformez ce fichier comme ceci :
unix
<date>28-30 jan</date>
<date>17-19 juin</date>
<date>18-20 nov</date>
shell
<date>23 mars</date>
<date>15 juil</date>
<date>7 sep</date>
La commande sed :
$ sed 's/ˆ[0-9].*$/<date>&<\/date>/' dates_cours.txt
ou :
$ sed 's/ˆ\([0-9].*\)$/<date>\1<\/date>/' dates_cours.txt
b. Exercice 2 : formatage de fichier
Récupérer le fichier .bash_profile (fourni). Afficher ce fichier avec la commande nl, qui numérote les lignes :
$ nl .bash_profile
1 # .bash_profile
2 # Get the aliases and functions
3 if [ -f ~/.bashrc ]; then
4 . ~/.bashrc
5 fi
6 # User specific environment and startup programs
7 PATH=$PATH:$HOME/bin
1. |
Retirer les quatre espaces qui précèdent les numéros... |