平均的なユーザーにとって、ターミナルウィンドウは不可解で不可解なものになる可能性があります。しかし、Linuxターミナルについて詳しく知ると、それがいかに効率的で強力であるかを理解するのにそれほど時間はかかりません。また、もっと多くのことを望んでいるのもそれほど時間はかかりません。 しかし、効率的であり、より多くの端末を端末に配置するよりも、端末をより良くするためのより良い方法は何でしょうか?
その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
ターミナルの多くの利点の1つは、集中制御を備えた集中インターフェースであるということです。これは、何百ものアプリケーションにアクセスできる1つのウィンドウであり、各アプリケーションを操作するために必要なのはキーボードだけです。しかし、最近のコンピューターにはほとんどの場合、処理能力に余裕があり、現代のコンピューター専門家はマルチタスクが大好きなので、何百ものアプリケーションの1つのウィンドウがかなり制限される可能性があります。
この欠陥に対する一般的な答えは、端末の多重化です。仮想端末ウィンドウを互いに重ねて、それらすべての間を移動する機能です。マルチプレクサを使用すると、集中制御を維持できますが、マルチタスクを実行するときにインターフェイスを交換することができます。さらに良いことに、ターミナル内で仮想画面を分割して、同時に複数の画面を表示することができます。
一部の端末は、タブ付きインターフェイスと分割ビューを備えた同様の機能を提供しますが、微妙な違いがあります。まず、これらの端末の機能は、グラフィカルデスクトップ環境に依存します。第二に、多くのグラフィカル端末機能は、マウスの操作を必要とするか、不便なキーボードショートカットを使用します。ターミナルマルチプレクサの機能は、グラフィカルデスクトップと同様にテキストコンソールでも機能し、キーバインディングは一般的なターミナルシーケンスを中心に便利に設計されています。
tmuxとGNUScreenの2つの一般的なマルチプレクサがあります。それらは同じことを行い、ほとんど同じ機能を備えていますが、それぞれの操作方法は少し異なります。この記事はGNUScreenの入門ガイドです。 tmuxの詳細については、KevinSonneyによるtmuxの紹介をご覧ください。
GNUScreenの使用
GNUScreenの基本的な使用法は単純です。 screen
で起動します コマンドを実行すると、Screenセッションの0番目のウィンドウが表示されます。新しいプロンプトが必要であると判断するまで、何も変更されていないことに気付くことはほとんどありません。
1つのターミナルウィンドウがアクティビティで占められている場合(たとえば、VimやJoveなどのテキストエディタを起動した場合、ビデオやオーディオを処理している場合、またはバッチジョブを実行している場合)、新しいウィンドウを開くことができます。新しいウィンドウを開くには、 Ctrl + Aを押します 、離してから cを押します 。これにより、既存のウィンドウの上に新しいウィンドウが作成されます。
ターミナルにはデフォルトのプロンプト以外は何も表示されていないように見えるため、新しいウィンドウが表示されていることがわかります。もちろん、他の端末はまだ存在します。新しいものの後ろに隠れているだけです。開いているウィンドウをトラバースするには、 Ctrl + Aを押します。 、リリースしてから n 次へ またはp 前へ 。 2つのウィンドウを開くだけで、 n およびp 機能的には同じことを行いますが、いつでもより多くのウィンドウを開くことができます( Ctrl + A 次にc )そしてそれらを通り抜けます。
GNU Screenのデフォルトの動作は、デスクトップというよりもモバイルデバイスの画面に似ています。一度に表示できるウィンドウは1つだけです。マルチタスクが好きなためにGNUScreenを使用している場合、1つのウィンドウだけに焦点を合わせることができるのは一歩後退のように思えるかもしれません。幸い、GNU Screenを使用すると、端末をウィンドウ内のウィンドウに分割できます。
水平分割を作成するには、 Ctrl + Aを押します 次にs 。これにより、ウィンドウペインと同じように、あるウィンドウが別のウィンドウの上に配置されます。ただし、分割されたスペースは、何を表示するかを指示するまで、使用されません。したがって、分割を作成した後、 Ctrl + Aを使用して分割ペインに移動できます。 次にタブ 。そこで、 Ctrl + Aを使用します 次にn 表示したいコンテンツが分割ペインに表示されるまで、使用可能なすべてのウィンドウをナビゲートします。
Ctrl + Aを使用して垂直分割を作成することもできます 次に| (これはパイプ文字、またはシフト \のオプション ほとんどのキーボードのキー)。
GNUScreenを自分のものにする
GNU Screenは、 Ctrl + Aに基づくショートカットを使用します 。習慣によっては、 Ctrl + A を使用するため、これは非常に自然に感じるか、非常に不便になる可能性があります。 とにかく行の先頭に移動します。いずれにせよ、GNU Screenは、.screenrc
を介してあらゆる種類のカスタマイズを許可します 構成ファイル。これを使用して、トリガーキーバインド(「エスケープ」キーバインドと呼ばれる)を変更できます。
escape ^jJ
スクリーンセッション中に自分の向きを保つのに役立つステータスラインを追加することもできます:
# status bar, with current window highlighted
hardstatus alwayslastline
hardstatus string '%{= kG}[%{G}%H%? %1`%?%{g}][%= %{= kw}%-w%{+b yk} %n*%t%?(%u)%? %{-}%+w %=%{g}][%{B}%m/%d %{W}%C%A%{g}]'
# enable 256 colors
attrcolor b ".I"
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
defbce on
どのウィンドウにフォーカスアクティビティがあり、どのウィンドウにバックグラウンドアクティビティがあるかを常に通知することは、複数のウィンドウを開いているセッション中に特に役立ちます。これは、端末の一種のタスクマネージャーです。
GNU Screenを学習しているときは、覚えておくべき新しいキーボードコマンドがたくさんあります。すぐに覚えておくものもありますが、あまり使用しないものは追跡が難しい場合があります。 Ctrl + A を使用すると、GNUScreen内のヘルプ画面にいつでもアクセスできます。 次に? 、ただし、キーボードで印刷して保持できるものが必要な場合は、GNUScreenチートシートをダウンロードしてください。 。
GNU Screenを学ぶことは、お気に入りのターミナルエミュレーターで効率と敏捷性を高めるための優れた方法です。試してみてください!