Niveau :      
Résumé : tail | head <= sed

Supposons que vous ayez un gros fichier et que vous vouliez récupérer les lignes 200 à 235. Votre premier réflexe sera sûrement :

$ head -n 235 file.txt | tail -n 35

Oui, mais en pratique cela revient a faire lire le fichier par 2 processus, ce qui pour un gros fichier peut être particulièrement consommateur de ressources. Utilisez plutôt la commande suivante qui fait le tout en une seule passe (et qui vous évitera de faire une soustraction) :

$ sed -n '200,235p' file.txt

Oui, mais vous aimeriez bien ne pas avoir à mesurer les numéros des lignes que vous voulez récupérer. Qu'à cela ne tienne, vous pouvez utiliser autre chose que des numéros de ligne pour l'extraction. Par exemple des expressions régulières :

$ sed -n '/^Begin/,/^End/p' file.txt

Vous pouvez aussi faire le contraire, c'est-à-dire supprimer des lignes plutôt que de les sélectionner :

$ sed '/^Begin/,/^End/d' file.txt

Et cerise sur le gâteau, vous pouvez appliquer une expression de substitution uniquement aux lignes concernées :

$ sed '/^Begin/,/^End/s/search.*/replace/' file.txt