
Ich möchte einwhiptail
Nachricht auf dem Anmeldebildschirm, die ausgelöst wird durch monit
, aber ich habe kein Glück.
Ich verstehe, dass es etwas mit der interaktiven/nicht interaktiven Shell zu tun haben könnte. Hier ist das Skript, das ausgelöst wird durch monit
.
#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 >/dev/tty1
Gibt es einen Trick oder sollte ich die Verwendung von Whiptail vermeiden?
Antwort1
Ich habe gerade Folgendes versucht und konnte die Ausgabe von meinem Desktop an /dev/tty2
uns senden whiptail
, daher denke ich, dass das, was Sie tun, machbar erscheint. Ein paar Dinge, die mir aufgefallen sind.
1. Berechtigungen
Ich musste Root sein, um irgendetwas an senden zu können /dev/tty2
. Ich gehe davon aus, dass Sie dies als Benutzer ausführen monit
, der höchstwahrscheinlich nicht die Berechtigung hat, Daten an ein TTY-Gerät zu senden.
2.--infobox
Der --infobox
Schalter schien in meiner aktuellen Shell nicht zu funktionieren, aber ich konnte eine --infobox
an senden /dev/tty2
. Ihre Ergebnisse können unterschiedlich sein --msgbox
. Hat in beiden Fällen funktioniert.
Antwort2
Der "Trick" ist, dass whiptail (wie dialog) seine Nachrichten standardmäßig in dieStandart Fehler, weil herkömmliche Programme dieStandardausgabefür Bildschirmaktualisierungen.
Sie können die Standardfehlermeldung umleiten, indem Sie 2
neben die >
Markierung ein Zeichen setzen:
#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 2>/dev/tty1
Weiterführende Literatur: