On Sun, Sep 12, 2010 at 02:58:01PM -0500, Joshua Isom wrote: > I wrote up a script to handle sessions for me. I typically use ssh > and a laptop so a multiplexer helps a lot, especially when updating > software, encoding videos, or anything else that takes a lot of > time. I haven't used tmux for very long, I just recently found it, > so I don't know if there's any quirks I'm not covering in the > script. Maybe other people can try it out and give suggestions? > >
> #!/bin/sh > > sessions= > # Check to see if tmux is running, or else sed might stall > tmux has-session 1>&2 2>/dev/null Are you sure this pair of redirections does what you think it does? :-) You know that if tmux is running you can use choose-session command to select a session? Something like: (tmux attach\; choose-session) || tmux new Will attach and let you choose if there are existing sessions, or create a new one if not. Although I realise yours does a little more. > if [ $? -eq 0 ]; then > sessions=`tmux list-sessions 2>/dev/null | sed -e 's/^\(.*\): > \(.*\)$/"\1" "\2" /' -e 's/(attached)/[attached]/' -e 's/(created.*)//' ` > fi > > # Get the terminal size, or default to 80x23 which is reasonable > ttysize=`stty size 2>/dev/null` > if [ $? -eq 0 ]; then > ttyw=`echo $ttysize|cut -f2 -d\ ` > ttyh=`echo $ttysize|cut -f1 -d\ ` > else > ttyw=80 > ttyh=23 > fi > > # Clean up temp files when leaving > tmuxsm_rmf () > { > rm -f $tmpfile > } > > trap tmuxsm_rmf exit > > tmpfile=`mktemp -t tmuxsm` > > eval dialog --menu \"tmux Session Manager\" \ > $(($ttyh - 4)) $(($ttyw - 9)) $(($ttyh - 11)) \ > "New" \"Start a new session\" \ > $sessions 2>$tmpfile > > # User canceled, or something else happened > if [ $? -ne 0 ]; then > echo "Canceled 1" > exit 1 > fi > > result=`/bin/cat ${tmpfile}` > if [ "${result}" = "New" ]; then > tmuxsm_rmf > dialog --inputbox "Session Name" 8 $(($ttyw - 9)) 2>$tmpfile > # User canceled, or something else happened > if [ $? -ne 0 ]; then > exit 1 > fi > result=`/bin/cat ${tmpfile}` > exec tmux new-session -s "${result}" > else > tmuxsm_rmf > exec tmux attach-session -t "${result}" > fi > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > tmux-users mailing list > tmux-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/tmux-users ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ tmux-users mailing list tmux-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tmux-users