Albo okna komunikatów GUI, albo okna komunikatów wyświetlane w terminalu.
Interesujące byłoby również uzyskanie prostego wejścia z powrotem od użytkownika, np. Tak / nie lub przycisków opcji.
Albo okna komunikatów GUI, albo okna komunikatów wyświetlane w terminalu.
Interesujące byłoby również uzyskanie prostego wejścia z powrotem od użytkownika, np. Tak / nie lub przycisków opcji.
Odpowiedzi:
W przypadku standardowego „pola wokół wiadomości” użyj boxes
:
echo 'This is a test' | boxes
boxes
będzie wyglądać tak (Pierwszy. Drugi jest niestandardowy jak cowsay
):
Jeśli masz na myśli pole ostrzeżenia, użyj notify-send
:
notify-send 'title' 'message'
notify-send
wygląda tak:
Możesz także użyć zenity
okna wyskakującego:
zenity --error --text="An error occurred\!" --title="Warning\!"
Zenity jest bardziej graficzny i ma więcej opcji, takich jak wyświetlanie okna jako pytania, przy użyciu:
zenity --question --text="Do you wish to continue/?"
a nawet paski postępu, używając:
find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."
zenity
wygląda tak:
Lub użyj dialog
, aby wyświetlić okno komunikatu tylko z wiersza poleceń:
dialog --checklist "Choose OS:" 15 40 5 \
1 Linux off \
2 Solaris on \
3 'HP UX' off \
4 AIX off
dialog
wygląda tak:
Inną opcją jest whiptail
:
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78
whiptail
wygląda tak:
A jeśli jesteś naprawdę szalony, użyj toilet
:
toilet -F border -F gay "CRAZY"
toilet
wygląda tak:
zenity
się denerwować raz w miesiącu w dziale aktualizacji i aktualizacji ...
xmessage
Oto dziadek alertów GUI:
xmessage -center "Hello, World!"
Dobroć w stylu retro.
Założę się również, że powinien być szeroko dostępny na systemach X11.
Wątek SO: Jak wyświetlić okno komunikatu GUI ze skryptu bash w systemie Linux? | Przepełnienie stosu
Testowane w Ubuntu 18.04.
xmessage
jest nawet domyślnie instalowany na Ubuntu Server. Więc mogę użyć ssh -Y <host>
do zalogowania się na maszynie podczas przekazywania x połączeń, a następnie uruchomić, some-command; xmessage "some-command is done"
aby wyświetlić powiadomienie na pulpicie, gdy zakończy się długo działające polecenie.
xmessage -timeout 10 "Goodbye in 10s!"
.
A potem tylko dlatego, że @ polym jest całkowicie ponad odpowiedzią, pomija klasyczny komunikat:
write <username> [<terminal>]
- wysłać wiadomość do innego użytkownika. Interaktywnie lub jako część potoku zecho "message" | write username
I uzupełnienie do napisania, wall
aby wysłać wiadomość do wszystkich użytkowników
Jeśli chcesz przesłać tekst do otoki Pythona, możesz użyć terminaltables
:
pip3 install colorclass
pip3 install terminaltables
Następnie w repozytorium GitHub możesz użyć jednego z przykładów, aby napisać opakowanie w języku Python.