Respuestas:
tmux \
new-session 'compass watch /path/to/project1/compass/' \; \
split-window 'compass watch /path/to/project2/compass/' \; \
detach-client
El new-session
comando (que crea una nueva tmux
sesión) y el split-window
comando (que divide la ventana actual en dos paneles) tmux
toma comandos de shell opcionales para ejecutarse. Lo detach-client
hace lo obvio al final.
Si desea una división horizontal (dos paneles uno al lado del otro), use split-window -h
el comando anterior.
Al enviar varios tmux
comandos tmux
, debe separarlos por ;
. Las ;
necesidades a ser protegidos de la cáscara citando / escapar de ella ( ';'
, ";"
o \;
), para detener la cáscara de interpretar como el final del tmux
comando.
Lo he dividido todo en líneas separadas para facilitar la lectura. Si hace esto en un script (que recomiendo), asegúrese de que no haya nada después de la final \
en cada línea.
Vuelva a adjuntar a la sesión con tmux a
, tmux attach
o tmux attach-session
(todos son equivalentes).
La tmux
sesión finalizará una vez que ambos comandos hayan terminado de ejecutarse.
Esto no funcionó para mí (estaba tratando de hacer algo como 'ls -la'). Lo que hizo fue:
tmux new-session -d bash
tmux split-window -h bash
#sends keys to first and second terminals
tmux send -t 0:0.0 "<my-first-command>" C-m
tmux send -t 0:0.1 "<my-second-command>" C-m
tmux -2 attach-session -d
Esto me permitió ejecutar cosas bastante genéricas y, aunque se ve feo, es bastante funcional.
Solo lo dejo aquí en caso de que otras personas estén buscando lo mismo.