Scripts con tmux [Solucionado]
Publicado: 14 Abril, 2011 - 17:09 Scripts con tmux [Solucionado]
Estoy usando tmux desde hace unos dias y me resulta comodo para algunas tareas.
en el manual y en varias pàginas que he consultado se contempla la posibilidad de ejecutar ordenes de bash en scripts y
sin embargo no me funcionan p.ej
Si hago un script:
#!/bin/sh
xterm -e tmux new-session &
sleep 2
tmux split-window -h 'elinks http://www.esdebian.org/'
sleep 2
tmux split-window -d 'htop'
sleep 2
tmux select-pane -L
sleep 3
tmux split-window -d 'free -m'
exit 0
Abre una panel con elinks uno con htop y un terminal y luego deberia dividir el panel y ejecutar 'free -m' y no lo hace.
He provado con comillas simple y dobles, con 'exec free -m' y un montón de variaciones y no me ha funcionado.
Alguna sugerencia?
Saludos.
- Inicie sesión o regístrese para enviar comentarios
- 620 lecturas


Personalmente lo habría dejado así:
#!/bin/shxterm -e tmux new-session -d -s mose
xterm -e tmux split-window -t mose -h 'elinks http://www.esdebian.org/'
xterm -e tmux split-window -t mose -v 'top'
xterm -e tmux select-pane -L -t mose
xterm -e tmux select-window -t mose
xterm -e tmux attach-session -t mose
Esto lo saqué de aquí:
http://blog.hawkhost.com/2010/06/28/tmux-the-terminal-multiplexer/
http://blog.hawkhost.com/2010/07/02/tmux-%E2%80%93-the-terminal-multiple...
Lo del 'free -m' si no me equivoco no funciona porque las secciones de tmux sólo se mantienen si están ejecutando un programa que mantenga "ocupada" la terminal, por esto cuando por ejemplo cierras elinks se cierra la sección entera.
Gracias mose, pero la página que enlazas ya la habia visto. El problema es solo con 'free -m' o comandos similares, lo demás funciona bien y no es al cerrar la sesión, si no que no se ejecuta; tambien he probado con 'free -m &'y nada.
Saludos.
Gracias mose, pero la página que enlazas ya la habia visto. El problema es solo con 'free -m' o comandos similares, lo demás funciona bien y no es al cerrar la sesión, si no que no se ejecuta; tambien he probado con 'free -m &'y nada.
Saludos.
Pues eso, como te he dicho el problema es con comandos que no "ocupan" la terminal, yo probé con echo, free, ls, ..., es decir comandos que no se ejecutan interactivamente, pero por ejemplo vim, moc, y demás funcionan.
El comando en sí se ejecuta, lo que pasa es que la ventana en la que se ejecutó se cierra.
Aquí también lo explican:
http://www.mail-archive.com/tmux-users@lists.sourceforge.net/msg00119.ht...
[...]
I'm not sure this need to be stated, it is obvious that when the command in the
window exits the window closes.[...]
Pues si, tienes razón.
Al final lo he solucionado con un workaround, volcar la salida a un fichero y leelo con vim.
tmux new-session -d 'free -m > /home/suku/freem; vim /home/suku/freem'; tmux attachGracias por la atención.