Descripción general
En la monitorización de servidores y la gestión de sesiones de usuario, el comando w es una herramienta clave para comprobar al instante los usuarios conectados actualmente y la carga del sistema (Load Average). En este artículo, analizaremos paso a paso desde la interpretación de la salida básica de w, pasando por las combinaciones de opciones más utilizadas en entornos de producción, hasta las diferencias con who y uptime.
1. Conozca los usuarios actuales y la carga del sistema de un vistazo: ejecución básica de w
Para comparar y verificar la información del tiempo de actividad del sistema y la carga, idéntica a la primera línea de salida del comando w, ejecutamos el comando uptime.

El comando w se utiliza para comprobar de un vistazo los usuarios que han iniciado sesión en el sistema, las tareas que está ejecutando cada uno y el estado de carga del sistema.
La primera línea de salida muestra la hora actual, el tiempo de actividad del sistema, el número de usuarios conectados y el promedio de carga (Load Average) durante los últimos 1, 5 y 15 minutos; a partir de la segunda línea se muestra la información detallada de la sesión de cada usuario.
⚙️ [Opciones principales]
-h, --no-header : No imprime el encabezado (la información superior de carga y los títulos de los campos) y muestra únicamente la lista de usuarios.-s, --short : Utiliza el formato corto, omitiendo los campos de hora de inicio de sesión, JCPU y PCPU.-f, --from : Alterna (habilita o deshabilita) la visualización del campo FROM, que muestra el nombre de host o la dirección IP de origen de la conexión.-i, --ip-addr : Muestra la ubicación de conexión en formato de dirección IP en lugar del nombre de host.-o, --old-style : Utiliza el formato de salida antiguo con espacios en blanco, mostrando espacios vacíos si el tiempo de inactividad es inferior a 1 minuto.

2. Creación de scripts de monitorización omitiendo encabezados y simplificando la salida (-h, -s)
El comando w -h omite la información de resumen del tiempo de actividad en la parte superior y la línea de encabezado de cada columna, mostrando exclusivamente la lista de sesiones de usuario.
Se utiliza con frecuencia al procesar scripts para analizar la cantidad de usuarios conectados o la información de un usuario específico sin líneas de encabezado innecesarias.
Dado que actualmente no hay usuarios que hayan iniciado sesión en el sistema, se devuelve un resultado vacío.

El comando w -s cambia el formato de salida a uno resumido y corto (short).
Al omitir la hora de inicio de sesión (LOGIN@), JCPU y PCPU incluidos en la salida predeterminada, permite verificar de forma compacta la información principal: sesión, origen, tiempo de inactividad (IDLE) y el comando en ejecución (WHAT), incluso en terminales estrechos.

El comando w -hs combina la opción para omitir el resumen del encabezado superior (-h) con la opción para simplificar la salida (-s).
Es muy útil para la automatización de monitorización mediante scripts de shell, ya que elimina tanto el encabezado como los campos innecesarios, entregando directamente las líneas con los datos esenciales de la sesión.
Como no hay usuarios conectados actualmente, finaliza sin mostrar ningún contenido.

3. Consulta de un usuario específico y control de la visualización de direcciones IP (-i, especificación de usuario)
Para la práctica de filtrado por usuario específico, verificamos el nombre de la cuenta con la sesión iniciada mediante el comando whoami y lo guardamos en la variable CURRENT_USER.

El comando w "$CURRENT_USER" filtra y muestra únicamente la información de la sesión de conexión de la cuenta de usuario indicada.
Es útil para rastrear rápidamente el historial de tareas o el tiempo de inactividad de un usuario específico en entornos multiusuario con muchos accesos concurrentes.

El comando w -i fuerza a que la ubicación de la conexión (FROM) se muestre en formato de dirección IP en lugar de nombre de host.
Se utiliza cuando se necesita evitar demoras causadas por la resolución inversa de DNS (Reverse DNS) y confirmar la dirección IP remota exacta de la conexión.

4. Análisis comparativo práctico: resumen de diferencias entre w, who y uptime
El comando uptime muestra en una sola línea concisa la hora actual del sistema, el tiempo de actividad, la cantidad de usuarios conectados y el promedio de carga (Load Average) de los últimos 1, 5 y 15 minutos.
Es útil cuando se desea revisar rápidamente el estado operativo general del servidor y los indicadores de carga sin requerir detalles de sesión por usuario.

El comando who -u muestra la lista de usuarios con sesión iniciada en el sistema, la información del terminal, la hora de inicio de sesión, el tiempo de inactividad (idle time) y el identificador de proceso (PID).
Es adecuado cuando se busca concentrarse en la identificación de sesiones activas, excluyendo la carga del sistema o los comandos que están ejecutando los usuarios.
Dado que no existen sesiones activas actualmente, se muestra un resultado vacío.

El comando w combina el resumen de carga del sistema de uptime con la lista de sesiones de who, ofreciendo una visión integral que incluye la tarea que realiza cada usuario (WHAT) y el uso de CPU.
En la parte superior se visualiza el promedio de carga del sistema y en la parte inferior el encabezado con la lista de sesiones, lo que permite comparar y analizar simultáneamente la carga del servidor y la actividad de los usuarios en una única pantalla.

Hasta aquí hemos visto cómo comprobar y analizar de un vistazo los usuarios conectados y la carga del servidor en Linux utilizando el comando w.
Aproveche esta herramienta integrándola como una rutina de verificación básica durante las tareas de mantenimiento del servidor o la resolución de incidencias en producción.