¿Hay alguna forma de emitir tail -F
o emitir un less
pitido (hacer sonar el timbre en una terminal) cuando entran nuevos datos (se agrega una nueva línea al archivo). ¿O hay alguna otra utilidad de Unix para hacer esto en Linux o Mac?
23
sed
idea es brillante, pero no sé lo suficiente 'sed' para que funcione, parece que no puedo capturar nuevas líneas en la expresión regular de la manera habitual (que estoy acostumbrado), creo que necesito decirle a sed no interprete el flujo entrante línea por línea.sed -e $'s/$/\a/'
agrega un$'\a'
(carácter de campana en la sintaxis ksh / bash / zsh) al final de cada línea.sed
regexpt es un poco extraño para mis ojos ingenuos.$'...'
sintaxis no es universal. Por ejemplo, [t] csh no lo admite.si usa GNU
screen
, puede configurarlo para que "mire" la ventana con la cola, y lo alertará en su barra de estado, o por la campana definida de su termcap, que hay una nueva salida en esa ventana.http://www.gnu.org/software/screen/manual/html%5Fnode/Monitor.html#Monitor
editar: solo tuve que agregar esto, ya que mencionaste mac os x
solo por diversión, si estabas buscando algo en particular, puedes usar el
say
comando de Mac OS X para leer el archivo que estás viendo. solo obtenga ellogtail
comando, de:http://www.hmug.org/pub/MacOS_X/BSD/Administration/Log/logcheck/
Y úsalo en un script como:
fuente
screen
muestra y alerta (supongo que también puedo hacer que suene la campana) SOLO UNA VEZ. No por cada nuevo evento que sucede (no por cada nueva línea que está disponible)beep
comando, en lugar desay
.exec
comando de pantalla para hacerlo también. El ejemplo en la página de manual es el!:sed -n s/.*Error.*/\007/p
que enviará una campana cada vez que se muestre "Error" en esa ventana.Podrías usar multitail . Es una cola mejorada que admite la ejecución de comandos en la coincidencia de expresiones regulares.
Por ejemplo, el siguiente comando reproduce un sonido y abre una ventana xmessage cada vez que se registra un paquete fuente marciano .
fuente
Solo para el registro, como @Nils sugirió que estoy usando
sed
para agregar unbell
a cada línea.La
sed
línea proporcionada por @Gillesfunciona en mi mac (habilité "timbre audible" y "timbre visual" en mi Terminal \ preferencias \ avanzado).
fuente
$'...'
secuencias de escape son una cosa solo de Bash.Para cualquier otra persona que encuentre esta página, estoy usando tcsh y esto parece funcionar:
No me preguntes qué significa la sintaxis sed ...
fuente
Puede probar
konsole
cuál permite la alerta sobre nueva actividad (o silencio) en cualquier pestaña.fuente
konsole
que sería comoscreen
alertar una vez, mientras que necesito recibir una alerta para cada nueva línea.