Hier soir, Vivien me demandait quelles étaient les 5 astuces qui rendent mon système d’exploitation terrible. Après avoir présenté les possibilités de l’historique (history(3)), j’avais parlé de ce qui constitue un de mes éditeurs de choix : sed(1). Je vais en présenter rapidement quelques fonctions parmi les plus utiles :
sed -n 123p fichier: affiche la 123ème ligne d’un fichier.sed -i.bak s/motif/remplacement/ fichier: effectue la substitution demandé, en gardant une sauvegarde sous la forme fichier.bak.sed -i 12d fichier: efface la 12ème lignesed -i d/motif/ fichier: efface toute les lignes contenant motif.sed -i -r 's/(^.*motif.*)/# \1/ fichier: commente les lignes contenant motif.sed -n 148,150s/sd/hd/p fichier: devinez :)
Voilà :)
En fait, vous aurez remarqué que la substitution que je propose pour commenter les lignes n’est pas très élégante si appliquée à une partie d’un fichier (en utilisant les sélecteurs n,m. J’ai eu l’occasion de m’en rendre compte et je me suis décidé à opter pour cette substitution : sed -ir 's,^[^//](.*),// \1,'. Attention, dans mon cas de figure, le caractère permettant de mettre en commentaire étant /, pour éviter de l’échapper et de rendre le bazar illisible, j’ai opté pour l’utilisation de , comme séparateur.
