よく使うscreenコマンド
Linuxサーバ上で作業するときは、screenを使って作業をしています。
- 1ウィンドウで複数の仮想端末を使用する事ができる
- デタッチしても作業状態をそのままにしておける
- ネットワークが切断しても安心
*以前はtmuxを使っていましたが、色々なしがらみがあり、screenを利用することに。
そこで、コマンドをたまに忘れてしまうので自分用にメモしておきます。
screen外(bash等)から実行するコマンド
screen起動(初回のみ)
# セッションに名前を付けてscreen起動 $ screen -S {セッション名} # .screenrcを指定してscreen起動 $ screen -S {セッション名} -c {.screenrcのパス}
screenの仮想端末一覧を表示
$ screen -ls
セッションにアタッチ
$ screen -r {セッション名}
screen内(アタッチ後)に実行するコマンド
環境やバージョンに応じてキーバインドが違ったり、使用できないコマンドがあります。
見方
以下のコマンドの場合、controlとaを同時にタイプした後、dをタイプする
[ctrl + a] d
screenからデタッチする
[ctrl + a] d
ウィンドウ一覧を表示する
[ctrl + a] "
新しいウィンドウを作成する
[ctrl + a] c
現在のウィンドウに名前を付ける
[ctrl + a] A
ウィンドウの切替
# 前方のウィンドウに移動 [ctrl + a] p # 後方のウィンドウに移動 [ctrl + a] n # 指定ウィンドウ番号に移動 [ctrl + a] [0-9] # 直前に使っていたウィンドウに移動 [ctrl + a] [ctrl + a]
バックスクロールモード
tailしているログを少しスクロールして確認したい時など
# バックスクロールモードに入る [ctrl + a] [ # または [ctrl + a] ESC
画面分割
# 水平分割 [ctrl + a] S # 垂直分割 ※環境によって使えない事が多い [ctrl + a] [tab] # 現在の分割領域を閉じる [ctrl + a] X # 現在の分割領域以外を閉じる [ctrl + a] Q
大体これだけ覚えておけば、なんとかなるんじゃないでしょうか・・!