透過 monit 使用 Whittail 向 tty 顯示訊息

透過 monit 使用 Whittail 向 tty 顯示訊息

我想顯示一個whiptail由 觸發的登入畫面上的消息monit,但我沒有運氣。

我知道這可能與互動式/非互動式 shell 有關。這是由 觸發的腳本monit

#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 >/dev/tty1

有什麼技巧嗎,或者我應該避免使用鞭尾?

答案1

我剛剛嘗試了以下操作,並且能夠將輸出從我的桌面發送到/dev/tty2使用whiptail,所以我認為您所做的似乎是可行的。我注意到的幾件事。

1.權限

我需要成為 root 才能將任何內容傳送到/dev/tty2.我假設您以monit很可能無權向 tty 裝置發送資料的使用者身分執行此程式。

2.--infobox

--infobox開關似乎在我目前的 shell 中不起作用,但我能夠發送一個--infoboxto /dev/tty2。 YMMV。--msgbox在這兩種情況下都有效。

答案2

「技巧」是鞭尾(如對話框)預設將其訊息寫入標準誤,因為常規程序使用標準輸出用於螢幕更新。

2您可以透過在標記旁邊放置一個來重定向標準錯誤>

#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 2>/dev/tty1

延伸閱讀:

相關內容