#author("2022-09-18T11:10:28+09:00","","")
#author("2022-09-20T08:53:11+09:00","","")
#topicpath


////////////////////////////////////////////////////////////////////////////////
* 目次 [#vc249053]
#contents();

////////////////////////////////////////////////////////////////////////////////
* 設定 [#nece9c8d]
- 設定は、${HOME}/.screenrc に記述する。
- Debianなら、以下にサンプルがあるので、${HOME} 配下にリネームして持ってくると良い。
 /usr/share/doc/screen/examples/screenrc


////////////////////////////////////////////////////////////////////////////////
** エスケープキーを再定義する [#nb4285fb]
- デフォルトでは C-a になっているので、bashの「行先頭に移動」と被ってしまう。これを回避するのに便利。
- 以下は、エスケープキーを "@" に変更する例。screenの画面上で文字として "@" を入力したい場合は、 "@@" を打てばよい。
 escape @@

- 但し、本頁では、screen のエスケープキーを一貫してデフォルトの "C-a" で記す。

////////////////////////////////////////////////////////////////////////////////
** 画面最下段にハードステータス(ステータスライン)を表示する [#q83168b0]
 hardstatus alwayslastline "%Lw"
- 1行分、ステータス表示に使われる。
- ここに、タイトル等が表示される

////////////////////////////////////////////////////////////////////////////////
* 基本操作 [#z168decf]
//==============================================================================
** 新規生成 [#create-session]
 $ 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 されていない session を attach する
 $ screen -r <session-name>
- session を attach する。若し attach 中であればその前に detach する。
 $ screen -r <session-name>
 $ screen -dr <session-name>
- 既にattachされているsessionを強制的にattachする
 $ screen -x <session-name>

//==============================================================================
** detach [#detach-session]
- 直接操作
 C-a d
- コマンドラインから(attach している terminal の windows が消されたにもかかわらず detach 状態にならなかった session を detach するのに使える)
 $ screen -d <session-name>

//==============================================================================
** 終了 [#terminate-session]
- ユーザがそのセッションを終了すべく操作するか、screenが起動したプロセス(デフォルトではシェル)が終了すると、そのセッションは終了する。
- セッションを直接終了する場合
 C-a K
- セッションとは違うウインドウ/コンソールから終了させる場合
 $ screen -S <session-name> -X kill
-- "-X <command>" で、指定したセッションにに対するコマンドとして <command> を送ることが出来る。 


////////////////////////////////////////////////////////////////////////////////
* 参考リンク [#s4934c2b]
- [[USING SCREEN EXAMPLE part2>http://www.dekaino.net/screen/03example.html]]
- [[Screen>http://risky-safety.org/zinnia/screen/]]
- [[GNU screenを使い倒せ!>http://www.rubyist.net/~rubikitch/computer/screen/]]


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS