On Tue, Jan 04, 2011 at 10:18:30AM +0100, Philippe Ney wrote: > [...] > > Personne n?a une idée comment lire un fichier par la fin avec sed, car > > je le verrais bien comme un bon candidat avec son option ?i . > > > > Salutations > > Frédéric > > Bonjour, > > wc permet d'avoir le nombre de ligne du fichier, donc qqch comme : > > $ sed -i '1,'$[$(wc -l file.log | cut -d\ -f1) - 100]'d' file.log > > devrait vous permettre de conserver les 100 dernières lignes. Amusant, un tail avec sed pour utiliser le ``-i'', mais tu n'as que les 100 dernières lignes (tail -n 100) et non pas les 100 derniers Ko.
sed -e 1,$((head -c $(($(stat -c %s file.log)-100000)) file.log;echo) | wc -l)d -i file.log Mais cela n'est pas atomique: Si le fichier est modifié entre le ``stat -c %s'' et le sed, alors le fichier fera plus de 100000 octets. (Sans compter que tout cela reste un peu lourd) -- Félix Hauri - <[email protected]> - http://www.f-hauri.ch _______________________________________________ gull mailing list [email protected] http://forum.linux-gull.ch/mailman/listinfo/gull
