Función de comando de publicación zsh / gancho

16

¿Existe un equivalente de zsh's precmd para realizar una función después de que se haya completado un comando?

Estoy buscando una forma de enviarme una notificación para cualquier proceso que tarde más de 60 segundos. Zsh tiene una gran capacidad para imprimir un resumen de los recursos utilizados para cada comando si el comando tarda más que el valor establecido en segundos REPORTTIME. Por lo que puedo decir, la única opción disponible es imprimir el formato en TIMEFMT.

(Más específicamente, estoy buscando enviarme una notificación con https://pushover.net/ si algún proceso que se ejecuta en una sesión tmux separada tarda más de 60 segundos en completarse).

Geoffrey Gallaway
fuente
13
¿Por qué se cerró esto? Parece útil y tiene mucho sentido para mí.
Blacklight Shining
1
Estoy de acuerdo, esta es una buena pregunta y no debería haberse cerrado.
NorthIsUp
Parece que esta pregunta similar puede responder!
Brad Parks,
Quisiera volver a abrir esta pregunta, por favor.
pawamoy
¿Lo has intentado notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"?
JW0914

Respuestas:

0

Puede usar preexecpara comenzar a contar el tiempo desde la ejecución y luego el precmdque se ejecuta después de que finaliza la ejecución del comando y antes de que se dibuje el aviso para evaluar si desea o no una notificación (y enviarla).

blami
fuente