2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Linux】 screenコマンドの備忘録:最初はこれだけ覚えればオッケー?

Posted at

screenコマンドとは

tmuxに似ていて、以下の用途で使える。

・ セッションの保存(sshで長時間のジョブを実行するときに助かる)
・ 画面の分割

MacでもLinuxでも大抵デフォルトで入っているらしい。
逆にtmuxは追加で入れないといけないので、できればscreenに慣れておきたい。

一連の流れ

以下は全てUbuntuで実行。

セッション管理

セッション一覧を確認

$ screen -ls
No Sockets found in /run/screen/S-user1.

セッションを作成(+自動的にセッションに入る)

$ screen -S hoge

今セッションの中にいるのかどうかチェック

$ echo $TERM  # "screen*"だったら内部にいる
screen.xterm-256color
$ echo $STY  # セッション内部のときだけ存在する環境変数 
3023174.hoge

セッション内部ではctrl-a <cmd> でscreenコマンドを実行することになる。
もともとのctrl-a(カーソルを先頭に移動)はctrl-a aで実行できる。

セッションを抜ける

ctrl-a d

一覧を確認してみる

$ screen -ls
There is a screen on:
	3023174.hoge	(08/09/2021 05:25:41 PM)	(Detached)
1 Socket in /run/screen/S-user1.

セッションに入る(以下のどれでもオッケー)

$ screen -r 3023174.hoge
$ screen -r hoge
$ screen -r 3023174

セッションの削除

$ screen -X quit  # 今いるセッションを削除して元のターミナルに戻る
$ screen -S hoge -X quit  # セッション外部にいて、セッション"hoge"を削除する

画面分割

画面分割

ctrl-a S  # 水平
ctrl-a |  # 垂直

画面移動

ctrl-a tab

虚無の画面に新規ウィンドウ作成(分割でできた新規画面に移動したらまずこれ)

ctrl-a c

分割された画面の削除

ctrl-a X  
# 小文字のxだと画面ロックになるので注意

Tips

マウスでスクロールするなら。

$ cat ~/.screenrc 
termcapinfo xterm* ti@:te@
defscrollback 100000

ctrl-aからctrl-jに変更。

$ cat ~/.screenrc 
escape ^Jj

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?