183 votes

Est-il possible d'utiliser `tail -f` la sortie de `dmesg` ?

Je veux faire quelque chose comme

dmesg | tail -f

mais ça ne marche pas :

J'utilise Mac OS X v10.6.7 (Snow Leopard). En faisant cela, tail quittera, au lieu de surveiller la sortie.

Je me demande s'il existe un moyen de le faire, ou une commande équivalente.

P.S., je ne pense pas qu'un while boucle sera une assez bonne idée.

0voto

Bill Zhao Points 1

Sous l'Ubuntu actuel (j'utilise Ubuntu 12.04 (Pangolin précis)),

tail -f /var/log/syslog
6< <( cat /var/log/syslog |grep -F  'kernel: '; sudo cat /proc/kmsg) cat /dev/fd/6

( la commande sudo nécessite le privilège sudo )

S'il vous plaît essayer aussi un autre comme : 6< <( dmesg ; sudo cat /proc/kmsg) cat /dev/fd/6

0voto

rzr Points 284

J'ai utilisé ce code pour rechercher un événement spécial du noyau et l'envoyer à un processus "callback" :

while true ; do dmesg -c ; sleep .1 ; done \
| grep --line-buffered  -o $pattern \
| ...

-3voto

Cela pourrait être utile :

dmesg | tail -f -

pipe la sortie de dmesg par la queue en utilisant le - comme raccourci de la sortie standard.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X