Whiptailを使ってmonitを介してttyにメッセージを表示します。

Whiptailを使ってmonitを介してttyにメッセージを表示します。

見せたいwhiptailログイン画面でメッセージを実行しましたが、monit運がありませんでした。

私はこれが対話型/非対話型シェルに関連している可能性があることを知っています。これはスクリプトによってトリガされますmonit

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

ヒントがありますか?それとも、ファテールの使用を避けるべきですか?

答え1

私は次のことを試してみて、私のデスクトップの出力を使用/dev/tty2するように送信できたwhiptailので、今やっていることがうまくいくようです。私が気づいたいくつか。

1.権限

に何でも送信するには、ルートである必要があります。 ttyデバイスにデータを送信する権限がないユーザーとしてこのタスクを実行していると/dev/tty2します。monit

2.--infobox

現在、シェルではスイッチ--infoboxが機能していないようですが、送信でき--infoboxます/dev/tty2。 YMMV。--msgboxどちらの場合でも動作します。

答え2

「秘密」とは、基本的には、ダイアログボックスのようなホイップテールがメッセージを次の場所に記録することです。標準エラー、一般プログラムが使用しているため標準出力画面を更新するため。

2マーカーの横にを配置して標準エラーをリダイレクトできます>

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

追加資料:

関連情報