DipMeshSystems.

TextConsoleLife 技術文書
技術文書 literature music このサイトについて
screenとはunix系のシェルで、いくつものセッションを並列して操作・実行するためのコマンドです。
文字ベースのコンソールを主とした作業では、そのままではウィンドウ分割などが行えないため不便なことが多いので、その問題を解決してくれます。

screen -ls デタッチされたscreenのリストを取得。
screen -R デタッチされたscreenにアタッチ出来る。
screen -x アタッチ中のscreenに重複出来る。コンソール共有出来る。
Ctrl+a H ログをとる。ログファイルの制御文字は
cat ./screenlog.0 | col -b > log.txt
のようにすることで取得可能。
Ctrl+a n 次のセッションに切り替え
Ctrl+a p 前のセッションに切り替え
Ctrl+a q 現在のセッションを復帰
Ctrl+a S 画面を分割して領域を作る
Ctrl+a Q カレント領域以外を非表示にする。
Ctrl+a Tab 領域移動
Ctrl+a A ウィンドウの名称を設定
Ctrl+a w タイトルバーにウィンドウのリストを表示
Ctrl+a Ctrl+[ スクロールモードに切り替え
スクロールモード中は vim 互換のキー操作で移動、
[space]でコピー範囲選択開始で、[space]でコピー終了。
コピーを行わない場合には Ctrl+a Ctrl+[ でスクロールモードを終了
Ctrl+a Ctrl+] コピーバッファを貼り付け
Ctrl+a c 新規セッション作成
Ctrl+a d デタッチ

デタッチしたscreenは終了されずに、バックグランドで実行を続けます。
そのため、不安定な回線での作業でも、接続し直してアタッチし直せば途中までやったことを無駄にせずにすみます。

サーバー上でrogueを実行したまま、デタッチしておけば、次にログインしてそのまま続けることも出来ます

セッション名を指定してscreenを起動
 screen -S SessionName


既に起動後のセッションの名称を変更(screenセッション内で)
 ^A :
 :sessionname セッション名


VIMのタブのように、screenでもタブが使えたら良いな、と思っていたら、こちらのページ に ~/.screenrc に記述するための良い感じのが掲載されていました。
 caption always "%{= wg} %-w%{=bu dr}%n %t%{-}%+w %= %{=b wb}%y/%m/%d(%D) %{=b wm}%c"



©1998-2014 DipMeshSystems.
this site is powered by OpenSylph / DipMeshSystems.
x