SSH接続時にホスト名を付けたtmuxウィンドウを開く方法
いわゆる踏み台サーバを介して作業を行っている環境では、踏み台サーバ上で起動したscreenやtmuxの中で他のサーバにSSH接続しているケースが多いかと思います。
その場合、たくさんのサーバを管理していると下記のような煩わしさがあります。
screenを使っていた時は @mounemoi さんに教えてもらった「screen利用中にsshコマンドを実行すると、ウィンドウ名がホスト名(正確にはSSHコマンドオプション)になった別ウィンドウを開く設定」で解決していました。
tmuxに移行するのに伴い同じことができないかと模索した結果、上記の方法をベースになんとか形になったのでまとめてみます。
~/.bashrc
# ssh 時に新規ウィンドウを作る ssh_tmux() { ssh_cmd="ssh $@" tmux new-window -n "$*" "$ssh_cmd" } if [ $TERM = "screen" ] ; then tmux lsw if [ $? -eq 0 ] ; then alias ssh=ssh_tmux fi fi