puttyでGNU screenを使いだしたので備忘録とバックスクロールの方法

マウスでバックスクロール出来るようにする

.screenrc

GNU screenのscrollbackとdefscrollbackは、ウィンドウのscrollback bufferサイズを変更するためのコマンドです。scrollback bufferのサイズ=コピーモードでスクロールバックできる行数です。デフォルトではscrollback bufferサイズが100しかないので、設定を変更して十分な大きさにしておくと便利です。

  • scrollback

現在開いているウィンドウのscrollback bufferのサイズを変更する
.screenrcに書いても効果を発揮しない

  • defscrollback

以後新しく開くウィンドウのscrollback bufferのサイズを変更する
.screenrcに書いてデフォルトのscrollback bufferサイズを変更するならこちらを使おう

GNU screenのscrollbackとdefscrollbackの違い - ぬいぐるみライフ?
defscrollback 10000

デフォルトだとscrollbackが100程度らしくあまり戻れないので、的当に大きく設定します。とりあえず1万とかにしてみました。

putty
端末 > 高度な設定 > Alternate 端末画面への切り替えを無効にする(W)

にチェックを入れます。
これで、クライアント側のマウスホイールでバックスクロールができる様になりました。このputtyの設定は、不要な場合もあるっぽいです。


以下は備忘録です。

screenを再起動せずに.screenrcの変更を反映する

^a : #^aはscreenのエスケープキーでCtrl+Aの事
source ~/.screenrc

screenを復帰

$ screen -r

もし、復帰したい仮想端末がまだアタッチされてるならscreen -rd

screenを複数起動してる場合の復帰

$ screen -ls
There are screens on:
        19803.pts-12.local        (Attached)
        12548.pts-11.local        (Attached)
        23013.pts-43.local        (Attached)
3 Sockets in /var/run/screen/*******.
$ screen -rd 19803.pts-12.local

仮想端末の一覧を出して[pid.]tty.hostを与えます。これちょっと長くてめんどくさい。

[remote detached]
$

もし、まだ別コネクションでアタッチされてたら、そっちではこの様に表示されてデタッチされます。

名前を付けて仮想端末を増やす

$ screen -t log

たとえばずっとログを出しておく用ならlogと付けたりします。

現状の.screenrc

$ cat .screenrc
caption always "%?%F%{= wk}%:%{= ww}%?%-w%{=u Wk}%n %t%{-}%+w"
defscrollback 10000

ほぼ何もしてません。

Linux CentOS 5
GNU screen 4.00.03 (FAU) 23-Oct-06
putty ごった煮版 0.60-JP_Y-2007-08-06