tmux

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
tmux [2024/04/24 17:04] perontmux [2024/04/30 16:41] (actual) peron
Línea 3: Línea 3:
 **tmux** es un multiplexor de terminal. Permite activar varias ventanas virtuales conmutables en una [[terminal de computadora]], lo que permite correr varias aplicaciones de consola al mismo tiempo, a partir de una única conexión al servidor.  **tmux** es un multiplexor de terminal. Permite activar varias ventanas virtuales conmutables en una [[terminal de computadora]], lo que permite correr varias aplicaciones de consola al mismo tiempo, a partir de una única conexión al servidor. 
  
-Con Tmux incluso le es posible mantener una sesión activa incluso al desconectarse del servidor.+Con Tmux te será posible mantener una sesión activa en texto-plano, incluso si te desconectas del servidor. 
  
-Tmux utiliza el fichero de configuración opcional ''~/.[[tmux.conf]]''. 
  
 >Tmux es un proyecto creado por OpenBSD (Texto-plano funciona en un servidor OpenBSD). >Tmux es un proyecto creado por OpenBSD (Texto-plano funciona en un servidor OpenBSD).
Línea 40: Línea 40:
 Sin duda la característica mas sobresaliente que ofrece Tmux es la posibilidad de __subdividir la //ventana actual// en "//[[#terminología de tmux|paneles]]//"__, tanto vertical como horizontalmente.  Sin duda la característica mas sobresaliente que ofrece Tmux es la posibilidad de __subdividir la //ventana actual// en "//[[#terminología de tmux|paneles]]//"__, tanto vertical como horizontalmente. 
  
-Utiliza **Ctrl+b**,**"** y **Ctrl+b**,**%** para subdividir la ventana en paneles horizontales y verticales respectivamente. +Utiliza **Ctrl+b**,**"** y **Ctrl+b**,**%** para subdividir la ventana en paneles horizontales y verticales respectivamente. Naturlamente, estos tendrán un tamaño menor al de la ventana completa.
  
->Cuanto más ventanas y paneles sumes a tu sesión de Tmux, podrías notar cierta pérdida de performance.+>Cuanto más ventanas y paneles sumes a tu sesión de Tmux, podrías notar cierta pérdida de performance. 
  
 ==Conmutar entre paneles== ==Conmutar entre paneles==
-Podrás conmuta el //[[#terminología de tmux|panel activo]]// de la //ventana actual// con **Ctrl+b**,**o**. También es útil la opción de seleccionar el panel de la ventana deseada, eligiendola de un listado abarcativo, que puedes presentar con **Ctrl+b**,**w**.+Conmuta el //[[#terminología de tmux|panel activo]]// de la //ventana actual// con **Ctrl+b**,**o**. También es útil la opción de seleccionar el panel de la ventana deseada, eligiéndola de un listado abarcativo, que puedes presentar con **Ctrl+b**,**w**.
  
 ==Redimensionar Paneles== ==Redimensionar Paneles==
 Existen varias maneras de redimensionar los paneles, pero la más simple es conmutar entre las diferentes diseños de panelado que vienen ya preconfigurados en tmux. Esta función se realiza con **Ctrl+b**,**Barra espaciadora**. Existen varias maneras de redimensionar los paneles, pero la más simple es conmutar entre las diferentes diseños de panelado que vienen ya preconfigurados en tmux. Esta función se realiza con **Ctrl+b**,**Barra espaciadora**.
  
 +Ten en cuenta que ciertas aplicaciones de terminal podrían requerir un panel no menor a cierta dimensión dada para poder funcionar.
  
 +==Cerrar Paneles==
 +Cierra los programas del //[[#terminologia de tmux|panel activo]]// (si lo hubiese) y al retornar a la shell, introduce el comando ''exit''. La subdivisión de paneles se eliminará hasta volver a una //ventana// (de panel único, claro está).
 ====Uso Avanzado==== ====Uso Avanzado====
 +
 +=== ¿Cómo salir de la sesión de tmux sin matar el servidor? ===
  
 Tmux emplea el clásico modelo [[cliente]]-[[servidor]] de otros [[emulador de terminal|emuladores de terminal]], pero puede tener múltiples sesiones y cada ventana es una entidad independiente que puede ser enlazada libremente a múltiples sesiones, se puede anclar (esto es, disponerla para usar en ella el teclado como dispositivo de entrada). Tmux emplea el clásico modelo [[cliente]]-[[servidor]] de otros [[emulador de terminal|emuladores de terminal]], pero puede tener múltiples sesiones y cada ventana es una entidad independiente que puede ser enlazada libremente a múltiples sesiones, se puede anclar (esto es, disponerla para usar en ella el teclado como dispositivo de entrada).
  
-=== ¿Cómo salir de la sesión de tmux sin matar el servidor? ===+Si bien recomendamos siempre guardar tus trabajos en los medios que texto-plano.xyz pone a tu disposición, esto te permitirá opcionalmente **dejar tu sesión activa en el servidor con un trabajo para continuarla luego** (podrás desconectarte y retomar donde estabas).
  
-Al presionar **Ctrl+b**,''d'' saldremos de la sesión, aunque - como el servidor de tmux está todavía encendido dicha sesión no estará perdidapor lo que si algún proceso en ejecución sigue activo, no morirá al concluir esta operación.+Presiona **Ctrl+b**,''d'' y //[[#terminología de tmux|desconectarás]]// la sesión del multiplexor, aunque - como el servidor Tmux está todavía encendidodicha sesión no estará perdida por lo que si algún proceso en ejecución sigue activo, no morirá al concluir esta operación.
  
 === ¿Cómo recupero una sesión de tmux? === === ¿Cómo recupero una sesión de tmux? ===
-Primero debemos conocer nuestro listado de las sesiones de tmux, (ya que es posible tener varias activas). Para ello ejecutamos el siguiente comando en la shell de nuestro sistema:+Primero deberás conocer el listado de tus sesiones inactivas de Tmux, (ya que es posible tener varias inactivas). Para ello utiliza el siguiente comando en la shell de nuestro sistema:
  
 <code bash> <code bash>
Línea 66: Línea 71:
 </code> </code>
  
- +Se te presentará un listado que guarda el siguiente formato:
-Se nos presentará un listado que guarda el siguiente formato:+
  
 <code> <code>
Línea 76: Línea 80:
 >Inicialmente  tienen el mismo sistema de nombramiento que las ventanas, o en otra palabras, son nombradas a partir del ''0'' y se aumentan secuencialmente por cada nueva sesión creada. En otras palabras, la sintaxis es ''[nombre de la sesión]'': ''[número de ventanas]'' (''fecha de creación''). >Inicialmente  tienen el mismo sistema de nombramiento que las ventanas, o en otra palabras, son nombradas a partir del ''0'' y se aumentan secuencialmente por cada nueva sesión creada. En otras palabras, la sintaxis es ''[nombre de la sesión]'': ''[número de ventanas]'' (''fecha de creación'').
  
-Por lo tanto, si deseamos acceder nuevamente a la sesión ''1'', debemos conectar el tmux a ella mediante:+En este caso, si deseas acceder nuevamente a la sesión ''1'', deberás //[[#terminologia de tmux|conectar]]// el multiplexor a ella mediante:
  
 <code bash> <code bash>
Línea 95: Línea 99:
 </code> </code>
  
 +===Inicio de tmux con Mosh===
 +Con esto podrás usar Tmux para iniciar una sesión en texto-plano.xyz desde [[Mosh]], evitando hacerlo en paralelo.
  
 +Crea un [[permisos_de_archivo_y_directorio#permiso_de_ejecucion|fichero ejecutable]] ''~/bin/[[tmux_start]]''. Luego genera un [[bash#alias|alias]]:
 +
 +‎<code bash>
 +‎alias tp='mosh --ssh="ssh -p 22 -i llave_tp_fulana.key" fulana@texto-plano.xyz tmux_start'
 +</code>
 +
 +Ahora, para ingresar a texto-plano.xyz
 +
 +‎===Configuración de Tmux===
 +El fichero de configuración opcional de Tmux es ''~/.[[tmux.conf]]''.
 ====Comandos de Tmux==== ====Comandos de Tmux====
  
Línea 103: Línea 119:
  
 |**Ctrl+b**,''?'' |Ayuda de los atajos de Tmux | |**Ctrl+b**,''?'' |Ayuda de los atajos de Tmux |
 +|**Ctrl+b**,''t'' |Presenta la hora :) |
 |**Ctrl+b**,''d''|[[#¿Cómo salir de la sesión de tmux sin matar el servidor?|Desconecta la terminal de la sesión de Tmux]] (**sale de Tmux** __dejándolo activo__) | |**Ctrl+b**,''d''|[[#¿Cómo salir de la sesión de tmux sin matar el servidor?|Desconecta la terminal de la sesión de Tmux]] (**sale de Tmux** __dejándolo activo__) |
  
Línea 141: Línea 158:
  
 ^ Término ^ Traducción ^ Significado ^ ^ Término ^ Traducción ^ Significado ^
-| **//Session//** | //Sesión// | Grupos de una o más ventanas juntas | +|**//Session//** | //Sesión// | Grupos de una o más ventanas juntas | 
-| **//Session name//** | //Nombre de la sesión// | El nombre de la sesión, que por defecto es un número empezando desde cero | +|**//Session name//** | //Nombre de la sesión// | El nombre de la sesión, que por defecto es un número empezando desde cero | 
-| **//Window//** | //Ventana// | Grupos de uno o más paneles juntos, enlazados a una o más sesiones | +|**//Window//** | //Ventana// |Grupos de uno o más paneles juntos, enlazados a una o más sesiones | 
-| **//Current window//** | //Ventana activa// | La ventana activa en la sesión adjuntada que se puede escribir; uno por sesión | +|**//Current window//** | //Ventana activa// |La ventana activa en la sesión adjuntada que se puede escribir; uno por sesión | 
-| **//Last window//** | Última ventana | Última ventana invocada | +|**//Last window//** |Última ventana | Última //ventana// invocada | 
-| **//Window list//** | //Lista de ventanas// | Listado de ventanas en una sesión en orden numérico | +|**//Window list//** |//Lista de ventanas// | Listado de ventanas en una sesión en orden numérico | 
-| **//Window index//** | //Índice de la ventana// | El número de una ventana en una lista de ventanas de una sesión | +|**//Window index//** |//Índice de la ventana// | El número de una ventana en una lista de ventanas de una sesión | 
-| **//Window layout//** | //Diseño de ventana// | El tamaño y posición de los paneles en una ventana | +|**//Window layout//** |//Diseño de ventana// | El tamaño y posición de los paneles en una ventana | 
-| **//Pane//** | //Panel// | Contiene una terminal y un programa en ejecución, presentado en en una ventana | +|**//Pane//** | //Panel// |Contiene una terminal y un programa en ejecución, presentado en en una ventana | 
-| **//Active pane//** | //Panel activo// | El panel en la ventana actual que contiiene el cursor para escribir; uno por ventana | +|**//Active pane//** | //Panel activo// |El panel en la ventana actual que contiiene el cursor para escribir; uno por ventana 
-| **//Prefix//** | //Prefijo// | La combinación de teclas que usa Tmux para ejecutar comandos, por defecto **Ctrl+b** | +|**//Detach//** | //Desconectar// |Desconecta el multiplexor de una //sesión activa// | 
- +|**//Attach//** | //Conectar// |Conecta el multiplexor a una //sesión inactiva// 
 +| **//Prefix//** | //Prefijo// |combinación de teclas que usa Tmux para ejecutar comandos, por defecto **Ctrl+b** |
  
 Más información: https://github.com/tmux/tmux/wiki/Getting-Started#basic-concepts Más información: https://github.com/tmux/tmux/wiki/Getting-Started#basic-concepts
  • tmux.1713978255.txt.gz
  • Última modificación: 2024/04/24 17:04
  • por peron