昔はtmux使ってたんだけど、いろんな意味で(てか前に戻れたりするので)screenが好きなのでscreen使ってみる。
導入
yum install screen
簡単。
設定
~/.screenrcを作る。
下みたいな感じで。
defencoding utf-8
escape ^Zz
autodetach on
defscrollback 2000
startup_message off
# zombie kr # 死んだ時:k / 復活したとき:r
# verbose on
defkanji on
hardstatus alwayslastline "%{= wg} %-w%{=bu dr}%n %t%{-}%+w %= %{=b kw} %Y/%m/%d %0c"
sorendition "+rb .G"
termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
| 設定 | 説明 |
|---|---|
| defencoding | 表示する文字コードを設定 |
| escape | prefixのキーを設定 |
| autodetach | 突然死んでもプロセスを生かしてくれる |
| defscrollback | ウィンドウで遡れる量 |
| startup_message | スタートアップしたときのメッセージをオフにする |
| zombie | 死んだ状態のキーと復活させるキーを設定 |
| verbose | ウィンドウ生成/破棄時のメッセージ表示 |
| defkanji | 日本語対応 |
| hardstatus | タブ表示にする |
zombieは入れて試したけどめちゃくちゃうざい。
exitした後かならずキー入力が欲しい。うざったい。
termcapinfoはscreen起動時にウィンドウサイズが変わるのを抑止。コピペしました。
→http://blog.goo.ne.jp/sohgoh/e/362865b122f5151f78ea7c7f16267659
コマンド
※設定でprefixをctrl+zにしてある。
| コマンド | 説明 |
|---|---|
| screen | 起動 |
| ctrl+z c | 新しい仮想端末を開く |
| ctrl+z w | 動いている仮想端末の一覧を表示 |
| ctrl+z k | 現在の仮想端末を閉じる |
| ctrl+z d | デタッチ |
| screen -ls | デタッチで動いている仮想端末の一覧表示 |
| screen -r [PID] | アタッチ |
| ctrl+z |デタッチせずにscreenを終了 | |
| ctrl+z [ | バックスクロールモードにする |
| ctrl+z S | 画面を上下2分割 |
| ctrl+z [tab] | フォーカス画面の移動 |
| ctrl+z Q | 画面分割をやめる |
| screen -S [セッション名] | セッション名を付けて起動 |
| ctrl+z A | 現在のウィンドウに名前をつける |
| ctrl+z [0-9] | 指定したウィンドウ番号へ飛ぶ |
縦画面できるのはtmux結構強いけど、IDE依存しちゃうとscreenの方がいろいろわかりやすくて良い気がした。
ずっとターミナルとかコンソールとか使うならtmuxの方がいいかも。
ログとサーバ起動ぐらいしか使わないから、これでいいのだ多分。
ちなみにscreenの縦分割はインストールとかいろいろ必要でめんどくさいから割愛(必要になったらやるかも)
追記
文字化けするときはscreen -U [セッション名]で起動すると直る。