エスケープキーを再定義する†
- デフォルトでは C-a になっているので、bashの「行先頭に移動」と被ってしまう。これを回避するのに便利。
- 以下は、エスケープキーを "@" に変更する例。screenの画面上で文字として "@" を入力したい場合は、 "@@" を打てばよい。
escape @@
- 但し、本頁では、screen のエスケープキーを一貫してデフォルトの "C-a" で記す。
画面最下段にハードステータス(ステータスライン)を表示する†
hardstatus alwayslastline "%Lw"
- 1行分、ステータス表示に使われる。
- ここに、タイトル等が表示される
基本操作†
新規生成†
$ screen -S <session-name> -t <title> [command] [command-arg(s)] ...
- 必須の引数は特にない。が、attach/dettach などをするには、分かり易い session-name を付ける方が良い。
- -S <session-name>: セッション名を指定する。セッション名は、attachするとき等、セッションの識別に用いられる。指定しない場合、PID等を組み合わせて自動的にセッション名が割り当てられる。
- -t <title>:タイトルを指定する。タイトルは、ハードステータスに表示される
- screen は通常、新しいセッションの起動時にシェルを起動する。しかし、コマンドを引数に渡して起動した場合、シェルではなくそのコマンドを起動する。その場合、呼び出すコマンドとその引数は、screenに渡す引数の最後に置く。
attach†
- どこからも attach されていない session を attach する
$ screen -r <session-name>
- session を attach する。若し attach 中であればその前に detach する。
$ screen -dr <session-name>
- 既にattachされているsessionを強制的にattachする
$ screen -x <session-name>
- attach する場合に指定する <session-name> は、 screen の一覧の中から部分一致で一つの session を特定出来るようなものであれば何でもよい。
detach†
画面の分割†
- 画面を分割し、新しい画面にウインドウを立ち上げ、ウインドウの分割を解除するまでの手順を示す:
- 画面を分割する
- 画面の分割(水平方向)
C-a S
- 画面の分割(垂直分割)
C-a |
- 分割された画面間の移動
C-a [Tab]
- 新しいウインドウを作る
C-a c
- 画面は分割しただけだと、新たに出来た方は shell が立ち上がっておらず、何も出来ない。それを使うにはこの操作が要る。
- 画面分割の解除
C-a X
起動している screen session の一覧†
- screen session 一覧の表示
$ screen -ls
- 個々の出力は下記の書式になっている:
<PID>.<session-name>
参考リンク†