[gull] Tronquer des fichiers log

Christian Grigis glove at grigri.org
Tue Jan 4 10:25:27 CET 2011


Hello,

On Mon, Jan 03, 2011 at 06:27:53PM +0100, Yves Martin wrote:
> L'appel système truncate conserve le début du fichier... alors qu'il s'agit ici d'en conserver la fin en commençant par un retour de ligne.

Oui... si <size> = 0, c'est pareil. ;-)

> http://manpages.ubuntu.com/manpages/maverick/man1/shrinkfile.1.html
> 
> Bref pour faire "sur place", il faut faire une copie de contenu avant le truncate.

Effectivement, si on veut conserver quelques lignes, une possibilité
est p.ex.:

  % tail -100 logfile.txt > logfile.txt.old && truncate -s 0 logfile.txt

[À noter qu'il y a une petite fenêtre pendant laquelle on risque de
perdre quelques lignes de log.]

Pour des besoins plus sophistiqués, je pense aussi que logrotate est plus
approprié (l'exemple ci-dessus étant d'ailleurs similaire à l'option
'copytruncate' de logrotate).

-Christian


More information about the gull mailing list