Screen は、物理端末間で複数のプロセス (通常は対話型シェル) を多重化できるようにするフルスクリーン ウィンドウ マネージャーです。各仮想端末は DEC VT100 端末と ANSI X3 制御機能を備えています。 ISO 6429 (64) および ISO 2022 標準 (行の挿入/削除、複数の文字セットのサポートなど)。ユーザーは、各仮想端末のスクロールバック履歴バッファとコピー&ペーストのメカニズムを利用して、ウィンドウ間でテキスト領域を移動できます。 screen が呼び出されると、シェル (または指定されたコマンド) を含むウィンドウが作成され、プログラムを通常どおり使用できるように邪魔をしなくなります。その後、いつでも、他のプログラム (その他のシェルを含む) を含む新しい (全画面) ウィンドウを作成したり、現在のウィンドウを閉じたり、アクティブなウィンドウのリストを表示したり、出力ログのオン/オフを切り替えたり、ウィンドウ間でテキストをコピーしたり、履歴のスクロール、ウィンドウの切り替えなど。すべてのウィンドウはプログラムを完全に独立して実行します。プログラムは、ウィンドウが現在表示されていない場合や、画面セッション全体がユーザーの端末から切断されている場合でも実行を続けます。
[root@s145]~# yum install -y screen
Installed:
screen.x86_64 0:4.1.0-0.27.20120314git3c2946.el7_9
Complete!
[root@s145] ~# screen -ls
No Sockets found in /var/run/screen/S-root.
[root @s145] ~# screen -S test
…
[root@s145]~# screen -ls
次の場所に画面があります:
2877.test (添付)
1 /var のソケット/run/screen/S-root.
[root@s145]~
Ctrl a を使用できます。現在のウィンドウを終了するには、screen -d を使用することもできます。ウィンドウのみを終了したい場合は、exit を使用します。
#5. ウィンドウを再接続します screen -r ID または名前を使用してセッションを再接続します, セッションを再接続する前に、セッションのステータスが「切断」である必要があります。 #6. デッド ステータス ウィンドウをクリアしますセッション ウィンドウが終了したときその後、プロセス状態がデッドとなり接続できなくなりますが、このとき「screen -wipe」コマンドを使用してセッションウィンドウをクリアできます。 7. セッションのロックとロック解除ctl を入力してセッションをロックします。ロック後、画面はいかなる入力にも反応しません。ctl を入力した後は、 a q でロックが解除されますが、画面がロックされている場合は反応しませんが、入力されたコマンドは受け入れられます。ロックが解除されると、すべてのコマンドが実行されます。危険なコマンドを入力しないようにするため、ctl a x を使用してロックすることをお勧めします。 ctl a x を入力してセッションをロックします。ロックを解除するには、ユーザー パスワードを入力する必要があります。#8. セッション共有
9. 画面にコマンドを送信するwindow
[root @ s145]~# screen -S test -X screen sh /root/test.sh
10. 画面分割画面
#11. 実践例
連続出力するスクリプトを書く[root@s145]~# cat test.sh #!/bin/bash \ while true do echo "输出`date +%F-%T`" sleep 10 done
[root@s145]~# screen -S echotest
test.sh スクリプトを実行します
他のセッションで echotest ウィンドウをオフラインにします
[root@s145]~# screen -d echotest
[3405.echotest が切り離されました。]
#3. 使用法構文とパラメーターの説明
##1. 使用法構文##使用法: screen [-opts] [cmd [args]]#2. パラメータの説明パラメータ
-4 | ホスト名を IPv4 アドレスのみに解決します。 |
---|---|
ホスト名を IPv6 アドレスのみに解決します。 | |
すべての機能をウィンドウごとの用語キャップに強制します。 | |
r] | |
むしろ設定ファイルを読んでくださいよりも。スクリーンrc」。 | |
他の場所で実行されている画面を接続解除します (そしてここで再接続します)。 | |
デーモンとして開始されました: 分離モードの画面セッション。 | |
リモートから接続を解除してログオフします (ここで再接続します)。 | |
画面セッションを取得するために必要なことをすべて実行します。 | |
コマンド文字を変更します。 | |
フロー制御オン、-fn=off、-fa=auto。 | |
ロールバック履歴バッファのサイズを設定します。 | #-i |
-l | |
-ls[match] | |
# と同じように、SockDir [一致する可能性のあるものについて] をリストするだけです。 ##-list | |
#-L | 出力ログをオンにします。 |
-m | $STY 変数を無視して、新しい画面セッションを作成します。 |
-O | 正確な vt100 シミュレーションではなく、最適な出力を選択してください。 |
-p windows | 名前付きウィンドウが存在する場合は、それを事前に選択します。 |
#-q | 静かな起動。失敗した場合は、ゼロ以外の戻りコードで終了します。 |
-Q | コマンドは、クエリ プロセスの標準出力に応答を送信します。 |
-r[セッション] | 切り離された画面プロセスに再接続します。 |
-R | 可能であれば再接続します。そうでない場合は、新しいセッションを開始します。 |
-sshell | $shell ではなく、実行するシェル。 |
-S sockname | このセッションに名前を付けます。 |
-t title | タイトルを設定します。 (ウィンドウ名)。 |
-T term | term は、「画面」ではなく、ウィンドウの $term として使用します。 |
-U | は、画面に UTF-8 エンコードを使用するように指示します。 |
-v | 「画面バージョン 4.01.00devel (GNU) 2006 年 5 月 2 日」を出力します。 |
-wipe[match] | 何もせず、SockDir[一致する可能性のある]をクリアするだけです。 |
切り離されていない画面に接続します。 (複数表示モード)。 | |
指定されたセッションで画面コマンドとして実行されます。 | |
Ctrl a c: ウィンドウの作成 | |
Ctrl a w :ウィンドウリスト |
Ctrl a 0-9: 0 番目のウィンドウと 9 番目のウィンドウを切り替えます。
Ctrl a K (大文字): 現在のウィンドウを閉じ、次のウィンドウに切り替えます (最後のウィンドウを終了すると、ターミナルは自動的に終了し、元のシェル状態に戻ります)
exit: 現在のウィンドウを閉じて、次のウィンドウに切り替えます (最後のウィンドウを終了すると、ターミナルは自動的に終了し、元のシェル状態に戻ります)
以上がLinuxの画面コマンドの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。