通过monit使用whiptail向tty显示消息

通过monit使用whiptail向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

进一步阅读:

相关内容