iterm2 で複数のタブを使っていたり、tmuxやscreenで複数のウインドウを開いていると、どの端末がどのホストにログインしているのか、何を実行中なのかといった情報が欲しくなります。 どうせなら各ウインドウにフォーカスを移さなくてもわかると便利ですよね。 そこで今回は、各ウィンドウ名に「ホスト名:実行中のコマンド名」というフォーマットで表示させることにします。 zshには preexec() と precmd()という組み込み関数があります。 preexec() コマンドを実行直前に呼び出される precmd() プロンプトを表示直前に呼び出される ここら辺の組み込み関数については、zshmisc(1) に記載されています。 preexec()でコマンド名を設定し、precmd() でコマンド名を消去すれば良さそうですね。 ホスト名は hostname コマンドを使って取得したものか
![zsh でウィンドウ名に ホスト名とコマンド名を表示する - 俺の日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/798469c55da2236f3c132feb481e48996ba609a3/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fy%2Fyizawa%2F20120918%2F20120918170929.jpg)