Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/09/2010, à 11:44

amauche

Suppression des 4 dernières ligne d'un fichier avec SED.

Bonjour à tous,

je voulais savoir comment on fait pour supprimer les 4 dernières lignes d'un fichier avec SED (ou autre mais priorité avec SED).

Merci à vous,

Hors ligne

#2 Le 17/09/2010, à 12:03

credenhill

Re : Suppression des 4 dernières ligne d'un fichier avec SED.

hello
avec head

head --lines=-4

avec sed

sed  -n ':s;1,3{N;bs};4,${N;P;D}'

ref. http://www.commentcamarche.net/faq/9558-sed-introduction-a-sed-part-iii#effacer-les-n-dernieres-lignes

Dernière modification par credenhill (Le 17/09/2010, à 12:13)

Hors ligne

#3 Le 17/09/2010, à 12:15

speculoos

Re : Suppression des 4 dernières ligne d'un fichier avec SED.

La solution "head" est la plus simple. Si tu veux le faire avec sed, il faut faire un mini-script, du genre :

#!/bin/sh

i="4"
while [ $i -ne 0 ]
do
        sed -i '$d' tonfichier
        i=`expr $i - 1`
done

Tu peux également récupérer le numéro de ta dernière ligne en faisant

sed -n '$=' testsed

Tu peux réutiliser ce nombre ensuite...

En cadeau, je te file un lien pratique avec une multitude d'exemples pour utiliser sed. Je l'utilise souvent quand j'ai des trou de mémoire sur son utilisation : http://sed.sourceforge.net/sed1line_fr.html

Dernière modification par speculoos (Le 17/09/2010, à 12:19)

Hors ligne

#4 Le 17/09/2010, à 12:17

amauche

Re : Suppression des 4 dernières ligne d'un fichier avec SED.

Cool merci credenhill c'est parfait.

Hors ligne

#5 Le 17/09/2010, à 12:24

speculoos

Re : Suppression des 4 dernières ligne d'un fichier avec SED.

Et merci de ma part aussi smile Beaucoup plus propre que ce que je propose (mes connaissances de sed sont plus limitées tongue) !

Hors ligne

#6 Le 17/09/2010, à 14:00

amauche

Re : Suppression des 4 dernières ligne d'un fichier avec SED.

Merci aussi speculoos smile

Hors ligne