5

GNUスクリーンとは?

4

1 に答える 1

27

GNUスクリーンとは?すごい!

ええと、もう少し便利な答えです。1 つのターミナルで複数のコンソール アプリケーションまたはコマンドを実行できます。タブ付きターミナルエミュレータのようなもの。実際、それはまさにそれです(通常のGUIツールキットでは行われていないだけです)

なぜそんなに素晴らしいのですか?シンプルで、スクリーンセッションでプログラムを実行できます(実行screenするとデフォルトのシェルが実行され、実行するscreen myappとセッションでmyappが実行されます)、ctrl+ a(画面制御シーケンス)を押してからdctrl+ ad)を押して切り離します。

プログラムはバックグラウンドで実行され続けます、実行とは異なりmycmd &、実行screen -rしてセッションを再接続することができ、すべてが終了したままになります。コマンドに入力を送信できます。それが curses UI の場合、すべてが「実際の」端末であるかのように機能します。

screen irssiこれは、コンソール IRC クライアントで非常に人気があります。SSH を使用できる場所ならどこからでも、セッションを実行 (たとえば)して再接続できます。

いくつかの便利なコマンド:

  • ctrl+ acセッションで新しい仮想端末 (または「ウィンドウ」) を作成します
  • ctrl+ anおよびctrl+ ap複数のウィンドウを循環する
  • ctrl+a1ウィンドウ 1 を選択し、ctrl+a4ウィンドウ 4 を選択します。
  • ctrl+ a, ctrl+aで、最後の 2 つのアクティブ ウィンドウ間をフリックします。
  • ctrl+ a, shift+ a(大文字の a) を使用すると、現在のウィンドウの名前を変更できます
  • ctrl+ a, `(私にとってはshift+ 2- 引用符) はウィンドウを一覧表示し、矢印を使用して 1 つを選択できます。すぐにリストする「タブバー」設定でも役立ちます

私が遭遇した他のいくつかの便利なもの:

  • -U画面を起動するときにフラグを使用して、Unicode をサポートするようにします (例: screen -xU)
  • -xフラグを使用すると、同じセッションを複数回再接続できます。(-r既存の接続を切断します)
  • ステータスバーで面白いことができます。表示するセットアップがあります[ hostname ][ 0-$ bash (1*$ irssi) ][16/09 9:32](ホスト名で実行され、2つのウィンドウがあります。これは、.screenrcのhardstatus行によって設定されます(回答の最後にあります)
startup_message off
vbell off
hardstatus alwayslastline
hardstatus string '%{gk}[ %{G}%H %{g}][%= %{wk}%?%-Lw%?%{=b kR}(%{W}%n*%f %t%?(%u)%?%{=b kR})%{= kw}%?%+Lw%?%?%= %{g}]%{=y C}[%d/%m %c]%{W}'
于 2008-09-16T09:45:29.410 に答える