タグ付けされた質問 「tmux」

tmuxは端末マルチプレクサーです。それぞれが個別のプログラムを実行している複数の端末(またはウィンドウ)を、単一の画面から作成、アクセス、制御できるようにします。tmuxは画面から切り離され、バックグラウンドで実行され続け、後で再接続されます。

2
tmuxの2つのプレフィックスコマンド?
数人が接続する必要があるtmuxセッションがあります。Ctrl+ aプレフィックスショートカットが好きな人もいれば、デフォルトのCtrl+ bショートカットを好む人もいます。両方のショートカットを機能.tmux.confさせるためにファイルに入れることができるものはありますか? 標準のようです set -g prefix C-a コマンドはCtrl+ bショートカットの設定を解除します。 私もこれを試しました: set -g prefix C-a set -g prefix C-b ただし、2行目ではCtrl+a
17 tmux 

4
tmux内でCtrl + Bをlessで使用する
Ctrl+Bコマンドプレフィックスを使用しますがtmux、これはCtrl+Binと衝突しますless、これはとます。これはファイルのスクロールアップに使用されます。 これを機能させるにはどうすればよいですか?で別のコマンドプレフィックスを設定する必要がありtmuxますか?私はそれを避けることができれば、新しいキーバインディングを学ぶ必要は本当にありません。
17 tmux 

1
シェルパイプを使用してtmuxの「クリップボード」との間でコピーする方法
シェル環境で作業するとき、「中間パイプ出力」をコピーする必要性にかなり頻繁に遭遇します(たとえば、既に実行中のエディターから、他のシェル、他のマシンなどへ)。 ウィンドウ環境では、これを解決する簡単な(そして一般的な)方法は、多くの場合、システムクリップボードを介したものです。 X11:... | xsel -i/xsel -o | ... OS X:... | pbcopy/pbpaste | ... tmuxのコピー/貼り付け機能を使用して、同様の便利な動作を取得するにはどうすればよいですか?

2
tmuxでShift + {Left、Right}にバインドするにはどうすればよいですか?
私はtmuxfrom を見ていscreenますが、(高度に設定可能な!)tmuxキーバインディングを設定しているときに衝突しました。 問題は、.screenrc私が持っている bindkey ^[[d prev bindkey ^[[c next bindkey ^[[a title bindkey ^[[b screen 1 バインディングが機能します(元々はから来ましたrxvt-tabbedex)。 ただし、tmuxコマンドをShiftLeft/のRight組み合わせにバインドする方法は明らかにありません。間違っていることを証明してください。

3
新しいtmuxセッションはbashrcファイルをソースしません
概要 新しいtmuxセッションを作成すると、プロンプトがデフォルトのbash構成からプルさsource ~/.bashrcれ、カスタマイズしたプロンプトを手動で実行する必要があります。 分析 RHEL 7マシンを使用しています。しばらく前にbashの更新後にこの動作に気づき始めましたが、今まで質問をすることはありませんでした(そして、どの更新が発生し始めたのかわかりません)。 たとえば、プロンプトを次のようにカスタマイズしました。 [user@hostname ~]$ 新しいtmuxセッションを開始するたびに、bashのデフォルトのように見えるものが使用されます。 -sh-4.2$ クイックランはsource ~/.bashrc常に問題を修正しますが、小さな問題を修正するたびにこれを行う必要があるのは面倒です。tmuxでこれを自動的に行う方法についてのアイデアはありますか? さらに情報が必要な場合は、喜んで提供します。 tmux.conf 参考のため、tmux.conf以下にファイルを示しますが、カスタムと呼ぶことはほとんどできません。 setw -g mode-keys vi # reload tmux.conf bind r source-file ~/.tmux.conf \; display-message " ✱ ~/.tmux.conf is reloaded"
17 bash  tmux 

3
tmuxコピーモード検索ハイライト
tmuxコピーモードで検索語を強調表示する方法はありますか? 以下は私のtmux設定です: # remap prefix to Control + a set -g prefix C-a unbind C-b bind C-a send-prefix bind a send-prefix # force a reload of the config file unbind r bind r source-file ~/.tmux.conf # set window start from 1 set -g base-index 1 # scrollback buffer n lines …
16 tmux  colors 

2
添付せずにtmuxセッションで何が起こっているかを見ることができますか?
多くの場合tmux、しばらく実行されるタスクを開始するために使用します。定期的に戻って使用して確認しtmux -a、まだ完了していない場合は切断し、後でもう一度確認します。 完全にアタッチせずにセッションで何が起こっているかの簡単なスナップショットを表示する方法はありますか?tail出力の最後のビットを取得するために理論的にセッションで行うようなものを探しています(ただし、出力のコピーで別のファイルを作成することを避けることができれば、より良いです) 接続してすぐに切り離すこともできます。私は、おそらくそのようなコマンドをリモートで実行することができ、キーストロークを保存しようとしています すなわちssh root@server tmux --tail?
15 tmux 

4
tmuxとクリップボードの間でテキスト選択をコピー/貼り付け
最新バージョンのtmux(gitリポジトリから)とxclip(0.12)を実行しています。Emacsのようなキーボードバインドを使用して、テキストの周りを移動したり、選択範囲をクリップボードにcopy-modeコピーしM-wたり、C-yコピーバッファからクリップボードへ/に貼り付けます()。 これまでのところ私はでテキストを貼り付けることができたC-y、とに動き回るcopy-modeEmacsライクなキーボードバインディングで、しかし私はまだテキストをコピーすることができません(例でtmuxのバッファからcopy-mode) バッファー全体をクリップボードにコピーするためのスレッド(およびその逆)を見つけましたが、私には機能していないようです。 また、tmux-usersメーリングリストで、最近のバージョンのtmux(gitリポジトリのみ)がというコマンドを提供していると言われましたcopy-pipe。マニュアルページには、このコマンドについて次のように記載されています。 の1つのコマンドは、引数copy-pipeを受け入れます。この引数は、選択範囲をコピーしてコマンドにパイプします。たとえば、次のコマンドは 'C-q'をバインドして、選択内容を/ tmpおよびペーストバッファにコピーします。 bind-key -temacs-copy C-q copy-pipe "cat >/tmp/out" copy-pipe選択を別のコマンドにパイプするために部分的に使用することを意図しているようです。また、この説明とコマンドにはいくつかのタイプミスがあるようです(何temacs-copyですか?) いずれにしても、私がやりたいことは: コピー中: コピーモードに入る (つまり、私はEmacsのナビゲーションコマンドを使用してコピーしたいテキストに移動しC-f、C-b、M-f、M-b、C-a、C-eカーソルを移動するなど)。これらのいずれにもプレフィックスはありません。 でクリップボードに選択したテキストをコピーしますM-w(接頭辞なしのいずれか) 貼り付け: 私は入力できるようにしたいと思いますC-y(せずに入力することcopy-mode(端末内のテキストを貼り付けるために)接頭辞なしのいずれか) 私は運のないコピーのために以下を試しました: bind-key -n M-w run "tmux save-buffer - | xclip -i -selection clipboard" ただし、貼り付けはうまく機能します。 bind-key -n C-y run "xclip -o | tmux load-buffer - ; tmux paste-buffer" 奇妙なことは、コマンドラインでクリップボードにコピーできるxclip -i …

2
tmuxがクラッシュした理由を見つける方法はありますか
VNCの使用からtmuxに移行しようとしています。私のtmuxは少なくとも1週間に1回はクラッシュし続けますが、なぜこれが起こるのかわかりません。VNCがクラッシュすることはめったになく、この毎週のクラッシュは完全に切り替わるのに非常に有害です。 tmuxがクラッシュする理由を見つける方法はありますか?私の.tmux.confはとてもシンプルです #Don't show the green ribbon below set -g status off #Select panes by mouse click set -g mouse-select-pane on #enable scrolling by mouse in tmux set-window-option -g mode-mouse on #enable resize of pane by mouse set -g mouse-resize-pane on ターミナルモードを256色に設定してiterm2を使用し、vimプラグインとカラースキーム(Lid、nerdtree、tagbar、indentLine、molokaiなど)を頻繁に使用します。端末の色を調整するために、.vimrcに次の設定がありましたが、これらがtmuxのクラッシュに関連しているかどうかはわかりません set t_ut= set t_Co=256 また、vimでマウスを有効にしました set mouse=a tmuxセッションがクラッシュする理由を見つける方法はありますか? …
15 tmux 

3
すでに転送されたsshキーをtmuxに転送するにはどうすればよいですか?
キーが保存されているマシンからSSH経由で接続し、2番目のマシンに転送してから、tmux内からキーを使用しようとしています。tmuxに入ると、転送が「ゆるい」ように見えます。tmux内からキーを使用できるように、「転送」するにはどうすればよいですか? $ ssh [server] -o ForwardAgent=yes $ git pull # Succeeds. $ /bin/bash $ git pull # Still succeeds, despite new shell. $ exit $ tmux attach $ git pull # Permission denied (publickey)
15 shell  ssh  tmux 


4
2つのウィンドウ間でペインをミラーリングする
1つのtmuxセッションの2つの異なるウィンドウに同じペインを表示することは可能ですか? 通常、メインウィンドウに1つの水平分割があり、上部ペインにvim(端末の高さの約80-90%)があり、作業中のプログラムを実行する下部ペインにコマンドラインがあります。下部のウィンドウは非常に小さいため、エラー出力が表示されないことが多く、tmuxのキーボードショートカットを使用してスクロールバックするのは面倒です。2番目のウィンドウを同じペインにアタッチして、エラー出力をさらに確認する必要がある場合に、スクロールバックを処理せずに2番目のウィンドウにすばやく切り替えることができるようにします。これは可能ですか? (フォールバックの1つは、teeのようなものを使用してログファイルにstdoutを書き込み、それを2番目のウィンドウでテールすることだと思います。
14 tmux 

2
GNU screenの:wrapモードに相当するtmux
私はtmuxへのジャンプを試みている長年のスクリーンユーザーです。私が使用する画面機能の1つは、Ctrla :set wrap出力を切り捨てる機能です。これは、ログファイルを追跡する場合、または行が数百文字のコンパイルセッションを追跡する場合に特に便利です。 私はmanページを読んで広範囲にグーグルで検索しましたが、同等のコマンド、またはシェルコマンドを使用した実行可能な回避策が見つかりません。私が思いつく最も近いのは、すべてをless -S「フォロー」モードにパイプし、それを少なくすることです。
14 tmux 

4
ncursesアプリケーションから呼び出されるスクリプトの出力のエスケープシーケンス
現在、ホームサーバーのtmuxセッションでJabberクライアント(ncursesを使用)としてmcabberを実行しています。ローカルでは、iTerm2をターミナルエミュレータとして実行します。これは、文字エスケープシーケンスを介したうなり声通知のトリガーをサポートします。 注:すべて echoこの質問のはprintf %b、またはecho -ebashとGNUのように機能しますecho。 たとえばecho "\e]9;foobar\007"、iTerm2に「foobar」というテキストを含むGrowlメッセージを送信させます。 ただし、tmuxセッションでは、エスケープシーケンスが使い果たされます。したがって、独自の文字エスケープシーケンス\Ptmuxを使用すると、次のように使用できます。 echo "\ePtmux;\e\e]9;foobar\007\e\\" これにより、tmuxセッション内からうなり声メッセージがトリガーされます。 ただし、新しいメッセージを受信したときに起動されるmcabberイベントスクリプトでこれを使用すると、エコーが間違った端末に送信されるかのように通知がトリガーされません。 これは、スクリプトをトリガーするmcabberがncursesアプリケーションであるため、通常のbashスクリプトからの出力が失われ、iTerm 2でそれが表示されないためと思われます。 また、発見したアイデアに賛同する前に、成功せずにsmcupを呼び出してみました tput smcup echo "\ePtmux;\e\e]9;$FROM: $MSG\007\e\\" tput rmcup 問題は「実際の端末ウィンドウ」に戻っていないので、これは機能しないと思いますが、ncursesウィンドウに出力を向けます。 これに関するアイデアはありますか?

1
接続せずにtmuxセッションを作成する
tmux接続せずに新しいセッションを作成しようとしています。これを実行しman tmuxても何も表示されませんが、何らかの方法でこれを行う必要があります。
14 tmux 

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