screen con Múltiples Ventanas
Hasta ahora, hemos usado «screen» para colocar un solo proceso en el fondo en una ventana desacoplada. Sin embargo, «screen» es capaz de hacer mucho más que eso. A continuación, ejecutaremos algunos procesos que nos permitirán supervisar algunos aspectos de nuestra computadora.
Escribimos lo siguiente para iniciar una sesión de «screen» llamada «monitor»:
screen -S monitor
En el indicador de comando de nuestra nueva ventana de sesión, lanzamos «dmesg» y usamos las opciones «-H» (legible por humanos) y «-w» (esperar nuevos mensajes). Esto mostrará los mensajes del búfer del kernel; los nuevos mensajes aparecerán a medida que ocurran.
Escribimos lo siguiente:
dmesg -H -w
Aparecen los mensajes existentes. No regresamos al indicador de comando porque «dmesg» está esperando nuevos mensajes y los mostrará a medida que lleguen.
Queremos ejecutar otra aplicación, así que necesitamos una nueva ventana de «screen». Presionamos Ctrl+A y luego «C» para crear una ventana nueva. Vamos a usar «watch» para ejecutar repetidamente «vmstat», de modo que obtengamos una pantalla actualizada con el uso de memoria virtual de nuestra computadora.
En el nuevo indicador de comando, escribimos lo siguiente:
watch vmstat
Aparece la salida de «vmstat» y se actualiza cada dos segundos.
Ahora tenemos dos procesos en ejecución. Para alternar entre las ventanas de «screen», presionamos Ctrl+A y el número de la ventana. La primera que creamos es la ventana cero (0), la siguiente es la ventana 1 y así sucesivamente. Para ir a la primera ventana (la de «dmesg»), presionamos Ctrl+A y 0.
Si presionamos Ctrl+A y 1, volvemos a la ventana de «vmstat».
¡Eso es bastante útil! Podemos presionar Ctrl+A y luego «D» para desacoplar la sesión; podemos volver a acoplarla más tarde. Ambas sesiones seguirán en ejecución. Nuevamente, para cambiar entre las ventanas, presionamos Ctrl+A y el número (0 o 1) de la ventana a la que deseamos cambiar.
Vamos al siguiente paso y veamos ambas pantallas en una sola ventana. Cuando hagas esto, debes ajustar el tamaño de tu ventana de terminal para que este paso sea útil. Nuestros ejemplos están limitados al tamaño de nuestras capturas de pantalla, por lo que nuestras ventanas se verán un poco comprimidas.
Para hacer esto, presionamos Ctrl+A y luego Mayús+S (se requiere una «S» en mayúscula).
La ventana se divide en dos «regiones».
La región superior aún muestra «vmstat» y la región inferior está en blanco. El cursor está resaltado en la captura de pantalla a continuación. Para moverlo a la región inferior, presionamos Ctrl+A y luego Tab.
El cursor se mueve a la región inferior, que en realidad es solo un espacio vacío. No es una shell, por lo que no podemos escribir nada en ella. Para obtener una pantalla útil, presionamos Ctrl+A y luego «0» para mostrar la ventana de «dmesg» en esta región.
Esto nos da ambas salidas en vivo en una ventana dividida. Si presionamos Ctrl+A y «D» para desacoplar la ventana y luego la volvemos a acoplar, perderemos la vista de pantalla dividida. Sin embargo, podemos restaurarla con las siguientes combinaciones de teclas:
- Ctrl+A, S: Dividir la ventana horizontalmente.
- Ctrl+A, Tab: Moverse a la región inferior.
- Ctrl+A, 0: Mostrar la ventana cero en la región inferior.
Podemos llevar las cosas un paso más allá. Ahora dividiremos la región inferior verticalmente y agregaremos un tercer proceso a la pantalla. Con el cursor en la región inferior, presionamos Ctrl+A y luego C para crear una nueva ventana con una shell en ella. La región inferior muestra la nueva ventana y nos da un indicador de comando.
Luego, ejecutamos el comando «df» para verificar el uso del sistema de archivos:
df
Cuando vemos que «df» se está ejecutando, presionamos Ctrl+A y el carácter de tubería («|»). Esto divide la región inferior verticalmente. Presionamos Ctrl+A y Tab para movernos a la nueva región. Luego, presionamos Ctrl+A y 0 para mostrar la ventana de «dmesg».
También puedes moverte de una región a otra y agregar más divisiones verticales u horizontales. Aquí tienes algunas combinaciones de teclas útiles adicionales:
- Ctrl+A: Cambiar entre la región actual y la región anterior.b
- Ctrl+A, Q: Cerrar todas las regiones excepto la actual.
- Ctrl+A, X: Cerrar la región actual.