web-dev-qa-db-fra.com

tail: Lire un fichier entier, puis suivre

Je voudrais un type de comportement tail -f qui lit le fichier entier, puis continue à le suivre tel qu'il est écrit.


SOLUTION

D'après la réponse que j'ai acceptée, cela fonctionne: tail -f -n +1 {filename}

Pourquoi cela fonctionne-t-il: L'option -f continue de "suivre" le fichier et génère les nouvelles lignes au fur et à mesure qu'elles sont écrites dans le fichier. Le -n +1 indique à tail de commencer à lire le fichier à partir de la première ligne. Utiliser -n -10 commencerait par les dix dernières lignes du fichier.

32
Sonny

Utilisation

tail -f -n +1

Utiliser man tail vous donnera plus de détails, voici l'extrait pertinent.

<snip>Numbers having a leading plus (`+') sign are relative to the
beginning of the input, for example, ``-n +2'' starts the display at the
second line of the input.</snip>

-f      The -f option causes tail to not stop when end of file is
        reached, but rather to wait for additional data to be appended to
        the input.  The -f option is ignored if the standard input is a
        pipe, but not if it is a FIFO.

-n number
        The location is number lines.
45
Timo Kluck

Essaye ça:

watch tail {filename}

{filename} est le fichier que vous souhaitez surveiller. Cela surveillera en permanence la commande pour vérifier les modifications et les affichera dans stdout. C'est très pratique.

3
Rick Chatham