概要
本記事では、Linux の screen コマンドについて説明します。screen コマンドは、端末多重化ツールであり、1 つの端末で複数のシェルセッションを管理できるようにします。これにより、セッションの中断や再開、バックグラウンドでの実行が容易になります。
screen
screen コマンドはユーザーが複数のターミナルセッションを管理できるようにするコマンドラインユーティリティです。これを使用すると、1 つの端末上で複数の仮想ターミナルセッションを管理でき、ログアウトした後でもセッションをバックグラウンドで実行させたり、後から再再接続して作業を再開できます。
インストールされていない場合、以下のコマンドでを実行します:
sudo apt install screen
使い方
セッションの操作
新しいセッションを開始する
ターミナルで以下のコマンドを実行して、新しいscreen
セッションを起動します。screen
特定の名前を持つ新しいセッションを作成するには、
screen -S <セッション名>
と入力します。screen -S mysession
セッションの切り離しと再接続
セッションを一旦切り離してバックグラウンドで実行し、後から再接続することができます。- セッションの切り離し:
Ctrl + a, d
切り離したセッションに再接続: 以下のコマンドを実行
screen -r
複数のセッションが存在する場合、再接続するセッション名を指定します。
screen -r <セッション名>
- セッションの切り離し:
セッションの一覧を確認する
現在のセッション一覧を表示するには、screen -ls
コマンドを使用します。screen -ls
セッションの終了方法
終了するセッションの全てのウィンドウでexit
またはCtrl + D
を実行します。
コマンド一覧:
コマンド | 説明 |
---|---|
screen |
セッションを開始する |
screen -S <名前> |
<pid>.sockname という名前のセッションを開始する |
screen -ls |
実行中のセッションを一覧表示する |
Ctrl + a, d |
セッションを切り離す |
Ctrl + a, D, D |
セッションを切り離してログアウト |
screen -x |
実行中のセッションに再接続する |
screen -r |
セッションに再接続する |
screen -r <名前> |
名前付きセッションに再接続する |
Ctrl + a, \ |
すべてのセッションを終了する (非推奨) |
Ctrl + a, Ctrl + \ |
強制終了 (非推奨) |
exit |
セッションを終する |
ウィンドウの管理
セッション内で新しいウィンドウを作成する
デフォルトでは、Ctrl + a, c
を押すと、新しいウィンドウが作成されます。ウィンドウ間の移動
- 直前のウィンドウに戻る場合:
Ctrl + a, Ctrl + a
- 番号を指定してウィンドウを切り替える場合:
Ctrl + a, ウィンドウ番号 (0~9)
- 次のウィンドウに変更:
Ctrl + a, n
またはスペースキー
- 前のウィンドウに変更:
Ctrl + a, p
またはBackspace
- 直前のウィンドウに戻る場合:
ウィンドウリストを表示する
現在のセッション内のウィンドウ一覧を確認するには、Ctrl + a, "
を押します。セッション内でのウィンドウ管理
以下のショートカットでウィンドウの名前を変更できます。ウィンドウに名前を設定することで、ウィンドウを簡単に識別できます。- ウィンドウバーを表示する:
Ctrl + a, w
- 現在のウィンドウの名前を変更する:
Ctrl + a, A
- ウィンドウバーを表示する:
コマンド一覧:
コマンド | 説明 |
---|---|
Ctrl + a, c |
新しいウィンドウを作成する |
Ctrl + a, Ctrl + a |
直前のウィンドウに戻る |
Ctrl + a, <number> |
番号でウィンドウを変更する (0〜9 のみ) |
Ctrl + a, <number or name> |
番号または名前でウィンドウを変更する |
Ctrl + a, n または Ctrl + a, <space> |
リスト内の次のウィンドウに変更 |
Ctrl + a, p または Ctrl + a, <backspace> |
リスト内の前のウィンドウに変更 |
Ctrl + a, k |
現在のウィンドウを閉じる (非推奨) |
Ctrl + a, \ |
すべてのウィンドウを閉じる (非推奨) |
Ctrl + a, " |
ウィンドウリストを表示する |
Ctrl + a, w |
ウィンドウバーを表示する |
Ctrl + a, A |
現在のウィンドウの名前を変更する |
領域の管理
領域を分割して、それぞれの領域にウィンドウを作成することができます。
Ctrl + a, S
: ディスプレイを水平に分割するCtrl + a, |
: ディスプレイを垂直に分割する
分割によって新たに作られた領域を活用するには、Ctrl + a, c
でウィンドウを作成する必要があります。
領域間の移動は以下のコマンドで行います。
Ctrl + a, tab
: 次のディスプレイ領域に移動するCtrl + a, X
: 現在の領域を削除するCtrl + a, Q
: 現在の領域以外のすべての領域を削除する
コマンド一覧:
コマンド | 説明 |
---|---|
Ctrl + a, S |
ディスプレイを水平に分割する |
Ctrl + a, | |
ディスプレイを垂直に分割する |
Ctrl + a, tab |
次のディスプレイ領域に移動する |
Ctrl + a, X |
現在の領域を削除する |
Ctrl + a, Q |
現在の領域以外のすべての領域を削除する |
クリップボード
ウィンドウの出力内容は以下の手順でコピー&ペーストが行えます。
以下の手順でコピーするテキストを選択し、クリップボードに登録します。
Ctrl + a [
またはCtrl + a, <esc>
でコピーモードを開始します。- 矢印キーでコピーの開始位置にカーソルを移動し、
space
を押します。 - 矢印キーでコピーの終了位置にカーソルを移動し、
space
を押します。
クリップボードに登録された内容をペーストする場合、Ctrl + a ]
を押します。
コマンド | 説明 |
---|---|
Ctrl + a [ または Ctrl + a, <esc> |
コピーモードを開始する |
space |
コピー範囲を選択する |
Ctrl + a ] |
ペースト |
コメント