Keep Terminal.app tab name follow working host
I've saw a great pro tip from joshbuhler
He have shared a way to change the Terminal.app tab name with an easy bash function.
After that, I've change a little my .bashrc to keep the updated name of the host I'm working on directly on the tab name.
Here is the magic:
function tabname () {
# Change Terminal.app tab name (by josjbuhler)
echo -en "\033];$1\007"
}
function sshname () {
SSHHOST="${@: -1}"
tabname "`echo $SSHHOST|cut -d'@' -f2`"
unalias ssh
ssh $1
alias ssh=sshname
tabname localhost
}
alias ssh=sshname
tabname localhost
Now, when I open a new tab, it's named localhost.
When I start connecting to a remote host with one of those commands:
# ssh root@myremote
# ssh mymailserver
The shell do those things:
1. Extract the remote hostname or IP from the arguments
2. Set the tab name to that
3. Unaliasing ssh (to avoid infinite loop)
4. Connect to remote host
When connection is done, the function will create the ssh alias, and set back the tab name to localhost.
Written by Matteo Cappadonna
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Osx
Authors
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#