2 votos

¿Permitir la salida del terminal a la notificación, si la salida contiene una frase específica?

Tengo una larga serie de comandos que ejecuto de forma semirregular. A veces, la finalización de los comandos requiere la entrada del usuario a través de la solicitud de contraseña u otras respuestas y, a veces, la información es la salida en el curso de estos comandos que tengo que copiar a un registro en otro lugar. Sin embargo, la mayoría de las veces, el scriptpuede ejecutarse sin supervisión mientras procesa su larga serie de tareas.

Me he encontrado con docenas de scripts y herramientas que te dirán cuando tu comando ha terminado de ejecutarse. Pero eso no es lo que necesito. Y he encontrado herramientas que deberían ser capaces de convertir una salida variada en una notificación, pero no hay documentación que explique cómo hacerlo.

Por lo tanto, si quiero que se me envíe una notificación a través del Centro de Notificaciones cada vez que se emita la frase "space cats" durante la ejecución de mi comando, ¿cómo puedo activar el envío de esa notificación?

1 votos

Buena pregunta. (+1) No tengo una respuesta ahora, pero estoy lo suficientemente interesado como para empezar a buscar ya que esto es algo que quiero hacer también. Por lo que he leído hasta ahora, hay 2 tipos de notificaciones: remotas y locales. Además, el acceso al NotCtr es a través de Servicio de notificaciones push de Apple (docs here) . Parece que hay actividad en el SO re APN Así que vale la pena mirar eso.

0 votos

Resulta que hay unas cuantas preguntas y respuestas sobre este tema. Aquí hay una que fue útil e informativa

3voto

Dario Solera Puntos 274

Si te entiendo bien, puedes acceder a la salida de tus scripts. Entonces puedes hacer algo como esto:

#!/bin/bash

# Replace the echo with your script
echo "space cats" | grep "space cats"

if [[ "$?" -eq "0" ]]; then
    osascript -e 'display notification "Attention!" with title "Notification" subtitle "I found space cats" sound name "Submarine"'
fi

1 votos

Me encanta (+1). Una alternativa a osascript puede ser el Run Shell Script desde la aplicación Automator. Parece que osascript es invocado por un shell script, mientras que Run Shell Script invoca un shell script. Basándonos en la escasez de recursos que Apple ha dedicado a osascript Parece que prefieren que los desarrolladores utilicen un enfoque "centrado en Apple" (y por lo tanto menos abierto) para la programación de shell. Un poco hipócrita por su parte, dado que pregonan su Raíces de Unix cuando se adapta a su narrativa.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X