Або поля графічних повідомлень GUI, або поля повідомлень, які відображаються всередині терміналу.
Також було б цікаво отримати можливість простого введення даних від користувача, наприклад, так / ні або кнопки радіо.
Або поля графічних повідомлень GUI, або поля повідомлень, які відображаються всередині терміналу.
Також було б цікаво отримати можливість простого введення даних від користувача, наприклад, так / ні або кнопки радіо.
Відповіді:
Для стандартного "поля навколо повідомлення" використовуйте boxes:
echo 'This is a test' | boxes
boxesбуде виглядати приблизно так (Перший. Другий - такий, як на замовлення cowsay):

Якщо ви маєте на увазі вікно попередження, використовуйте notify-send:
notify-send 'title' 'message'
notify-send виглядає так:

Ви також можете використовувати zenityдля спливаючого вікна:
zenity --error --text="An error occurred\!" --title="Warning\!"
Зеніт є більш графічним і має більше варіантів, як, наприклад, вікно з’являється як питання, використовуючи:
zenity --question --text="Do you wish to continue/?"
або навіть смужки прогресу, використовуючи:
find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."
zenity виглядає так:

Або використовуйте dialogдля вікна повідомлення лише командного рядка:
dialog --checklist "Choose OS:" 15 40 5 \
1 Linux off \
2 Solaris on \
3 'HP UX' off \
4 AIX off
dialog виглядає так:

Ще один варіант whiptail:
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78
whiptail виглядає так:

А якщо ви справді божевільний, використовуйте toilet:
toilet -F border -F gay "CRAZY"
toilet виглядає так:

zenityна власні нерви раз на місяць у відділі оновлень та оновлень ...
xmessage
Це сповіщення прадіда GUI:
xmessage -center "Hello, World!"

Чисте ретро добро.
Я також думаю, що він повинен бути широко доступним у системах X11.
Так нитка: Як показати вікно повідомлення графічного інтерфейсу зі скрипту bash в Linux? | Переповнення стеку
Тестовано в Ubuntu 18.04.
xmessageнавіть встановлено на сервері Ubuntu за замовчуванням. Тож я можу використовувати ssh -Y <host> для входу в машину під час пересилання x з'єднань, а потім запустити, some-command; xmessage "some-command is done"щоб спливати сповіщення на робочому столі, коли команда тривалої роботи закінчена.
xmessage -timeout 10 "Goodbye in 10s!".
І тоді лише тому, що повністю у верхній відповіді @ polym пропущено класичне повідомлення:
write <username> [<terminal>]- надіслати повідомлення іншому користувачеві. Або інтерактивно, або як частина труби зecho "message" | write username

І додаток написати, wallвідправити повідомлення всім користувачам

Якщо ви готові передати текст на обгортку Python, ви можете використовувати terminaltables:
pip3 install colorclass
pip3 install terminaltables
Потім в GitHub Repo ви можете використовувати один із прикладів для написання обгортки пітона.