walles una utilidad de línea de comandos que muestra un mensaje en los terminales de todos los usuarios registrados. Los mensajes se pueden escribir en el terminal o en el contenido de un archivo. wall significa escribir todo, para enviar un mensaje solo a un usuario específico, use el writecomando.

Por lo general, los administradores del sistema envían mensajes para anunciar el mantenimiento y piden a los usuarios que cierren sesión y cierren todos los programas abiertos. Los mensajes se muestran a todos los usuarios registrados con una terminal abierta. Los usuarios que utilicen un entorno de escritorio gráfico sin una terminal abierta no verán los mensajes. Cada usuario puede controlar el acceso de escritura a su terminal con la mesg utilidad. Cuando el superusuario invoca el wallcomando, todos los usuarios reciben los mensajes, sin importar su mesgconfiguración.

Difusión de un mensaje

La sintaxis del wallcomando es la siguiente:

wall [OPTIONS] [<FILE>|<MESSAGE>]

Si no se especifica ningún archivo, walllee el mensaje de la entrada estándar.

La forma más sencilla de transmitir un mensaje es invocar el wallcomando con el mensaje como argumento:

wall "The system will be restarted in 10 minutes."
Broadcast message from root@velozega.host (pts/0) (Sun Oct  4 19:22:07 2020):

The system will be restarted in 10 minutes.

El mensaje se transmitirá a todos los usuarios que estén conectados actualmente.

Para ver todos los usuarios registrados, ejecute el comando w o .who

Para suprimir el banner y mostrar solo el texto que escribe a los usuarios registrados, invoque el comando con la opción -n( ):--nobanner

wall -n "The system will be restarted in 10 minutes."
The system will be restarted in 10 minutes.

Si desea escribir mensajes de varias líneas, invoque el comando sin argumentos:

wall

El wallcomando esperará a que ingrese texto. Cuando haya terminado de escribir el mensaje, presione Ctrl+Dpara finalizar el programa y transmitir el mensaje.

También puede usar la redirección de cadena aquí o canalizar la salida de otro comando a wallAquí hay un ejemplo que muestra cómo usar el echo comando para transmitir mensajes de varias líneas:

echo "The system will be restarted in 10 minutes. \nPlease save your work."  | wall

Difusión de un mensaje desde un archivo

Si envía regularmente los mismos mensajes, puede escribir cada uno de ellos en un archivo, de modo que no tenga que volver a escribir el mismo texto. walllee del archivo solo cuando se invoca como root.

Para transmitir el contenido de un archivo, invoque el wallcomando seguido del nombre del archivo:

mensaje1_archivo.txt
The system will be restarted in 10 minutes.
wall message1_file.txt
Broadcast message from root@velozega.host (pts/0) (Sun Oct  4 19:25:06 2020):

The system will be restarted in 10 minutes.

Difusión de un mensaje a un grupo

Para enviar un mensaje solo a los miembros de un grupo determinado, ejecute el comando con la opción -g--group), seguida del nombre del grupo. Por ejemplo, para escribir solo en los terminales de los miembros del grupo “devs”, ejecutarías:

wall -g devs "The system will be restarted in 10 minutes."

El grupo también se puede especificar por su GID (ID de grupo).

Conclusión

El wallcomando escribe un mensaje en los terminales de todos los usuarios actualmente conectados.

Siéntase libre de dejar un comentario si tiene alguna pregunta.