notificar-enviar a otro usuario mediante crontab

notificar-enviar a otro usuario mediante crontab

Tengo un script que se ejecuta mediante crontab pero, como su, en algún momento es posible que envíe una notificación mediante notificación-envío, pero quiero enviar esto a un usuario específico (el inicio de sesión es en $2, pero solo uno iniciará sesión al mismo tiempo). tiempo)

Probé las siguientes líneas pero no funciona;(

export DISPLAY=:0.0

eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)";

username=$2
pid=$(pgrep -u $username nautilus)
dbus=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$pid/environ | sed 's/DBUS_SESSION_BUS_ADDRESS=//' )
export DBUS_SESSION_BUS_ADDRESS=$dbus

¡Gracias por la ayuda de antemano!

Respuesta1

Encontré esto y funciona genial:

DISPLAY=:0 sudo -u $2 notify-send "$path not found!

Respuesta2

Agregar head -n 1funciona porque ahora hay tres líneas de datos de pgrep -u $LOGNAME gnome-session.

eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session | head -n 1)/environ)";

lo estoy usando enmi script para monitorear ZFS y mdamd.

información relacionada