接続を失うことを恐れずにパテでコマンドを実行する


13

「screen」コマンドをどのように効果的に使用しますか?
それは...ですか:

  1. 「画面」と入力します

  2. コマンドを入力

  3. 接続が失われる

  4. 失われたセッションを確認する

手順4を実行するにはどうすればよいですか?

回答:


18

画面あり:

  1. screen
  2. タイプ command
  3. Ctrl- A- D画面上から剥離します
  4. セッションからのログオフ
  5. screen -RD 新しいセッションから画面に再接続する(複数ある場合は、現在の画面セッションのリストが表示され、セッション番号を指定する必要があります)

ログファイルを残したり、いくつかの関連する出力をスローしたり、対話性を必要としないコマンドに役立つより簡単な方法はnohup次のとおりです。

  1. nohup command > logfile &
  2. セッションからのログオフ
  3. tail -f logfile 新しいセッションから

注:ステップ3は完全にオプションです。切り離さずにPuTTYセッションを閉じた場合でも、で再度接続できますscreen -RD
ダンカンジョーンズ

4

画面は非常に強力であり、あなたがまさにあなたが尋ねたものを行うことができます。

すべてのセッションを表示するには、次のように入力します

screen -list

再接続するスクリーンセッションを特定したら、

screen -dr SCREENID

セッションを適切にデタッチおよび再アタッチします。

あなたはあまり良くないこともできます、

screen -D -R

必要に応じてリモートでデタッチおよびログアウトし、その後再アタッチします。そのセッションが存在しない場合は、セッションを作成してユーザーに通知します。「-t NAME」を追加して、シェルまたはプログラムにタイトルを付けることができます。

画面内で、

command-c

新しいウィンドウを作成します(したがって、切断および再接続するのに4000000のスクリーンセッションは必要ありません)。

command-int

もちろん、0からのインデックス付け:P

あなたはスクリーンに少し慣れていないように見えるので、私はあなたが他の情報を使うことができると仮定します。私は次のようなコマンドが好きです:

-e xy

これにより、xがコマンド文字になり、yが文字になり、リテラルコマンド文字が生成されます。デフォルトはCtrl-aと `aです。

ここには他にもいくつかあります:スクリーン!プログラマーにとっては


2

screen -dr 前の画面セッションを切り離して再開します。


2

screenの使用について私が気付いたのは次のとおりです(私も始めたばかりです)。

  • screen -S <name>「<name>」という名前の画面を作成します。これは、同時に複数の画面セッションを実行する場合に非常に役立ちます。たとえば、私は通常使用するものと永続的なプロセスに使用するものを持っています。
  • screen -ls 実行中の画面をリストします。
  • screen -r <name>切り離された画面を再開します。画面がすでにどこかに取り付けられている場合は、を使用しますscreen -dr <name>

また、画面の使用を開始するとき、離れるときはいつでも^a d(= ctrl-aに続いてd)を押して、現在実行中の画面を切り離します。その後、後で再開できます。

さらに^a ?、画面内で使用できるさまざまなコマンドのリストを確認することをお勧めします。

これらの(私にとって)最も重要なものは:

  • ^a c スクリーンセッションで新しいウィンドウを作成します。
  • ^a ^a 最後に使用した2つのウィンドウを切り替えます。
  • ^a " セッションの現在のウィンドウをリストします。
  • ^a Esc 画面バッファをスクロールします。
  • ^a k 現在のウィンドウを強制終了します。
  • ^a x コンピューターを離れる必要があり、他の人がそれを台無しにしたくない場合に備えて、画面セッションをロックします。


1

ログインしてすぐに画面を起動するように環境を設定することもできます。それを行うには多くの方法があります。これを.bashrcファイルに追加することにしました。

# screen management
if [ $SSH_TTY ] && [ ! $WINDOW ]; then
  SCREENLIST=`screen -ls | grep 'Attached'`
  if [ $? -eq "0" ]; then
    echo -e "Screen is already running and attached:\n ${SCREENLIST}"
  else
    screen -U -R
  fi
fi


0

ステップ4は「screen -r」です。

本当に強制的に切断された場合は、「screen -r -d」を実行して、まだ開いていると思われる古いsshセッションから強制的に切断する必要がある場合があります。


0
 For windows system

 Open putty 
 then login in server

コンソールで画面を見たい場合は、コマンドを書く必要があります

 Screen -ls

画面にアクセスする必要がある場合は、以下のコマンドを使用する必要があります

 screen -x screen id
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.