A menudo me encuentro haciendo lo mismo con tmux
:
cd
a un directorio dado.tmux
- Cambiar el nombre de la ventana a lo que estoy haciendo.
- Dividir la ventana verticalmente 50%.
- Inicie un proceso en la ventana izquierda.
- Inicie otro proceso en la ventana derecha.
- Lucro.
¿Hay alguna forma de automatizar el inicio de todo esto para poder ejecutar un solo comando y obtener la ventana que estoy buscando?
Respuestas:
Archwiki salva el día! La inicialización de sesión en la página tmux da un ejemplo.
Dicho esto, en lugar de iniciar tmux como
tmux
,tmux new -s name
nombrará la sesión cuando comience en lugar de asignarle un número.Inicialización de sesión
Puede hacer que tmux abra una sesión con ventanas precargadas incluyendo esos detalles en su ~ / .tmux.conf:
Para comenzar una sesión con ventanas divididas (paneles múltiples), incluya el comando splitw debajo de la nueva ventana que desea dividir; así:
abriría 2 ventanas, la segunda de las cuales se llamaría foo / bar y se dividiría verticalmente por la mitad (50%) con foo corriendo por encima de la barra. El foco estaría en la ventana 2 (foo / bar), panel superior (foo).
Para administrar varias sesiones, obtenga archivos de sesión separados de su archivo conf:
fuente
La respuesta de Rob es excelente y explica exactamente cómo manejar las sesiones desde tmux. Ahora, si no le importa usar una herramienta de terceros, tmuxinator es un gran proyecto que ayuda a crear y administrar sesiones fácilmente .
Cada sesión está controlada por un archivo de configuración que le permite definir todas sus ventanas y paneles junto con sus diseños y comandos predeterminados para ejecutarse dentro de ellos. También le permite definir un directorio de proyecto predeterminado, un socket específico y demonios que se deben ejecutar (por ejemplo, mysql). Para colmo, también proporciona un método fácil para adjuntarlos: simplemente ejecute
mux [session-name]
y comenzará la sesión o se adjuntará si ya se está ejecutando. Lo he estado usando por un tiempo y me encanta (¡gracias aziz !).https://github.com/aziz/tmuxinator
fuente