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 presionaCtrl + 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) oCtrl + 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.