
質問を閲覧するtmux について調べました (通常は GNU Screen を使用します)。質問は、それぞれの長所と短所は何ですか。特に、tmux についてはあまり見つけられませんでした。
答え1
からウェブサイト:
- tmux は GNU screen とどう違うのでしょうか? 他には何を提供していますか?
tmux は screen に比べていくつかの利点があります。
- 明確に定義されたクライアント サーバー モデル: ウィンドウは独立したエンティティであり、複数のセッションに同時に接続して複数のクライアント (端末) から表示したり、同じ tmux サーバー内のセッション間で自由に移動したりできます。
- 対話的に使用する場合でも、キーバインディングとして使用する場合でも、シェルから使用する場合でも、同じ構文を持つ、一貫性があり、十分に文書化されたコマンド インターフェイス。
- シェルから簡単にスクリプト化可能。
- 複数の貼り付けバッファ。
- vi または emacs キーレイアウトの選択。
- ウィンドウのサイズを制限するオプション。
- 特定のコマンドの出力の最初の行を表示できる、より使いやすいステータス ライン構文。
- よりクリーンで、モダンで、簡単に拡張できる、BSD ライセンスのコードベース。
tmux が省略している screen に含まれる機能はまだいくつかあります。
- 組み込みのシリアルおよび Telnet サポート。これは肥大化しており、tmux に追加される可能性は低いです。
- IRIX や HP-UX などのより広範なプラットフォームのサポート、および特殊な端末のサポート。
答え2
1 つの違いは、複数の端末が 1 つのセッションに接続されている場合に、2 つの動作がどのようになるかです。
screen では、接続された各端末のビューは他の端末から独立しています。tmux では、接続されたすべての端末に同じものが表示されます。
1 つの tmux セッションに 2 つのターミナルが接続されているとします。^B1 つのターミナルに 1 と入力すると、もう 1 つのターミナルもウィンドウ 1 に切り替わります。
1 つの画面セッションに 2 つの端末が接続されていて、^A一方の端末に 1 と入力しても、もう一方の端末には影響しません。
これは、tmux 1.2 での私の経験に基づいています。1.3 がリリースされたことは知っていますが、変更ログにはこの動作の変更に関する記述がありませんでした。
画面の動作が気に入っていて、それを tmux で使用したい場合:
元の tmux セッションが呼び出された場合0
(デフォルト)、tmux new-session -t 0
) を実行して、同じウィンドウ セットに接続された新しい独立したセッションを開始し、独自のビューを持つことができます。
答え3
tmux は、GNU screen と比べるとかなり新しいものです。どちらのプログラムもほぼ同じ問題を解決するため、利点と欠点は難しい質問です。tmux は BSD ライセンスですが、screen は GNU GPL です。これは一部の人にとっては重要です。
現時点では、screen の方が (Linux 上で) 多く使用されています。つまり、特定の Linux ボックスでは tmux よりも screen の方がよく使用されています。ただし、tmux は基本インストールの一部として含まれているため、OpenBSD 上では tmux の方が多く使用されています。
どちらのプログラムでもほぼ同じことができますが、状況はそれよりも少し複雑です。 2 つのプログラム間の切り替えはそれほど複雑ではありません。screens の機能の多くは tmux にも取り入れられているためです。ただし、どちらかのパワー ユーザーの場合、もう一方に切り替えるときに多少のフラストレーションを感じる可能性があります。
どのプログラムでもそうですが、それはあなたのニーズと、どちらが使いやすいかによって決まります。両方試してみて、どちらが使いやすいか見てみましょう。
tmuxの詳細については、翻訳元:
答え4
私の使用上の最大の違いは、Gnu Screenではフレームを水平方向にしか分割できないのに対し、Tmuxでは水平方向と垂直方向の両方に分割できるという点です。これは一種の動的な目標ですが、ここで私が言うように垂直分割が画面に登場。
それ以外は、ほぼ横ばいです。