Centro de Ayuda

Uso de Screen en Linux. Crea, recupera y elimina sesiones de Terminal

Screen es una herramienta de línea de comandos en Linux que permite gestionar sesiones de terminal múltiples y persistentes. Con screen, puedes ejecutar programas en segundo plano, desconectar una sesión sin cerrarla y reanudarla más tarde.

Esto es útil para tareas largas o remotas, ya que tus procesos continúan corriendo incluso si te desconectas del servidor. Además, permite dividir la pantalla, crear múltiples ventanas y mantener un control eficiente de tus sesiones.

También puedes combinar el uso de screens con el envío de correo electrónico vía SSH.

Creación de una nueva sesión de screen

Para iniciar una nueva sesión de screen, simplemente escribe:

screen

Esto iniciará una nueva sesión y te llevará a un shell dentro de screen.

Crear una sesión con nombre

Es útil asignar un nombre a la sesión para identificarla más fácilmente:

screen -S nombre_sesion

Desconexión de una sesión (detach)

Para desconectarte de una sesión de screen sin cerrarla (es decir, dejarla en segundo plano), presiona:

Ctrl + a + d

Esto te devolverá al shell original, y la sesión de screen continuará ejecutándose en segundo plano.

Listar sesiones de screen activas

Para ver todas las sesiones de screen que están actualmente en ejecución:

screen -ls

El resultado será algo como:

There is a screen on:    1234.mi_proceso_largo
  (Detached) 1 Socket in /var/run/screen/S-usuario.

Reanudar una sesión de screen

Para reanudar una sesión desconectada:

  • Si la sesión tiene nombre:screen -r nombre_sesion
  • Si la sesión no tiene nombre o hay múltiples sesiones:

    Primero, lista las sesiones con screen -ls y luego reanuda usando el ID de la sesión:

    screen -r 1234

Eliminación de una sesión de screen

Para terminar una sesión de screen, puedes hacerlo de varias maneras:

Desde dentro de la sesión

  • Salir del shell: Simplemente escribe exit o presiona Ctrl + d para cerrar el shell dentro de screen. Esto terminará la sesión.

Desde fuera de la sesión

  • Matar la sesión por nombre:screen -S nombre_sesion -X quit
  • Matar la sesión por ID:screen -X -S 1234 quit

Comandos útiles dentro de screen

Mientras estás dentro de una sesión de screen, puedes utilizar varios comandos. Todos los comandos se inician con Ctrl + a seguido de otra tecla.

  • Desconectar la sesión: Ctrl + a + d
  • Ver la lista de comandos de screen: Ctrl + a + ?
  • Crear una nueva ventana dentro de screen: Ctrl + a + c
  • Cambiar entre ventanas: Ctrl + a + n (siguiente) o Ctrl + a + p (anterior)
  • Cerrar la ventana actual: Ctrl + a +  k

Uso avanzado de screen

Dividir la pantalla

Puedes dividir la pantalla para ver múltiples ventanas al mismo tiempo.

  • Dividir horizontalmente:Ctrl + a + S
  • Dividir verticalmente:Ctrl + a + |
  • Moverte entre regiones:Ctrl + a + Tab
  • Cerrar la región actual:Ctrl + a + X

Scrollback (desplazamiento hacia arriba)

Para desplazarte hacia arriba y ver el historial:

Ctrl + a + [

Luego puedes navegar usando las teclas de flecha o Page Up / Page Down. Para salir del modo de desplazamiento, presiona Esc.

Consejos adicionales

  • Configuración personalizada: Puedes personalizar el comportamiento de screen editando el archivo ~/.screenrc.
  • Registro de sesión: Para registrar todo lo que ocurre en una sesión de screen, puedes iniciar la grabación con:Ctrl + a + H

    Esto creará un archivo en el directorio actual.

    screenlog.0

La herramienta screen es extremadamente poderosa y flexible para gestionar sesiones de terminal persistentes en Linux. Con este tutorial, deberías ser capaz de crear, recuperar y eliminar sesiones de screen, así como utilizar algunas de sus funciones avanzadas para mejorar tu flujo de trabajo.

Última actualización: 25 de marzo de 2025

Tiempo aproximado de lectura: 7 minutos

¿Te ayudó este artículo?
¡Vamos a hacerlo!

Comienza HOY por sólo $69.00/mes

Incluye constructor web, 30GB en la nube, +200 Apps y correo electrónico profesional.

Contratar Ahora