概要

screenは一つの端末で複数の仮想端末を実現するソフト。様々な付加機能があるが、端末間で(しかもキーボードだけで)コピペできるのが非常に便利。

インストールと基本設定

1)インストール

# cd /usr/ports/sysutils/screen
# make install clean

2)設定

~/.screenrcを編集する。
defencoding eucJP
escape ^z^z
※^zはCTRL-zでなくて、^とzを並べて書いただけ。
※escapeはscreenの機能を開始するトリガーキー。デフォルトは^aで使いにくいので変更。

3)起動方法

シェル上からscreenと打てば起動。screenのタイトル画面が表示されるが、spaceかenterでスキップ。

使い方

screenの機能は^zを押下した後に続けて何かのキーを押すことで実行できる。ここでの説明は^z押下後に続けて打つキーのみを書いている。続けて打つキーはCtrlを押しながらでも単独でもOK。
例)
d:デタッチする
これは^z^dもしくは^zdでデタッチ機能が実行されることを意味する

1)基本操作

c:新しい仮想端末を作る(仮想端末には番号とタイトルが付与される)
n:次の仮想端末に移動する
<spc>:次の仮想端末に移動する
p:前の仮想端末に移動する
w:仮想端末の一覧を画面下部に表示する
W:仮想端末の一覧を表示し、仮想端末を選択できる
A:仮想端末のタイトル変更
<num>:指定した番号の仮想端末に移動
[:コピーモードの開始(バックログの表示)
]:コピーモードで指定したバッファを貼り付ける
d:デタッチ(後述)
?:ヘルプ表示
※仮想端末とはscreenが管理する端末エミュレーターのこと。


2)アタッチとデタッチ

デタッチはscreen上のプロセスを起動したままscreenから抜けること。アタッチはデタッチしたscreenプロセスに復帰すること。別にデタッチしなくても、とにかく稼働中のscreenプロセスがあればアタッチできる

screen上での操作

d:デタッチする

シェルからのコマンド操作

screen -ls:デタッチしたscreenセッションを確認
screen -x {プロセス番号}:他端末でアタッチ済みのセッションに更にアタッチする
screen -r {プロセス番号}:screenセッションにアタッチする
screen -d {プロセス番号}:リモートのscreenセッションをデタッチする
screen -D {プロセス番号}:リモートのscreenセッションをデタッチしログアウトさせる

3)コピー&ペースト

同一screenプロセスにアタッチしている端末間で文字のコピーペーストができる。まずはコピーモードを開始する。
[:コピーモードの開始(バックログの表示)
コピーモードの移動操作はviと同じ。コピーしたい領域を選択する。
<spc>:コピーの開始点と終端点を指定
終端点を指定した時点でコピーモードは終了する。途中でキャンセルも可能。
<esc>:コピーモードをキャンセル
ペーストもキー操作で可能
]:コピーモードで指定したバッファを貼り付ける

4)画面分割、画面ロック、画面のハードコピー

作成中(あんまし必要じゃない。。。)

5)ログ記録

作成中

注意点、Tips

  • screenって打つのが長ったらしいので、エイリアスを定義して使用。最初はscで、次からはsでアタッチ。
alias s='screen -x'
alias sc='screen'

環境

  • Panasonic CF-R3
  • FreeBSD 6.0-Release

参考サイト

最終更新:2007年01月12日 00:55