¿Cómo puedo crear un cuadro de mensaje desde la línea de comando, ya sea cuadros de mensaje GUI o cuadros de mensaje que se muestran dentro de la terminal?
También sería interesante poder obtener una entrada simple del usuario, por ejemplo, una entrada dada con botones de opción (sí/no, Aceptar, etc.).
Respuesta aceptada:
Para un "cuadro alrededor de un mensaje" estándar, use boxes
:
echo 'This is a test' | boxes
boxes
se verá así (primero. El segundo es un personalizado como cowsay
):
Si te refieres a un cuadro de alerta, usa notify-send
:
notify-send 'title' 'message'
notify-send
se parece a esto:
También puedes usar zenity
para una ventana emergente:
zenity --error --text="An error occurred!" --title="Warning!"
Zenity es más gráfico y tiene más opciones, como que la ventana aparezca como una pregunta, usando:
zenity --question --text="Do you wish to continue/?"
o incluso barras de progreso, usando:
find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."
zenity
se parece a esto:
O use dialog
, para un cuadro de mensaje solo de línea de comandos:
dialog --checklist "Choose OS:" 15 40 5
1 Linux off
2 Solaris on
3 'HP UX' off
4 AIX off
dialog
se parece a esto:
Otra opción es whiptail
:
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78
whiptail
se parece a esto:
Y si estás realmente loco, usa toilet
:
toilet -F border -F gay "CRAZY"
toilet
se parece a esto:
- Fuente de cajas
- Fuente del cuadro de diálogo 1
- Fuente del diálogo 2
- Fuente de zenity 1
- Fuente de zenity 2
- Fuente de cola de látigo 1
- Fuente de cola de látigo 2
- Fuente para inodoro