ある端末からテキストをコピーして選択せずに別の端末に入力できますか?
より正確には、同じ端末ウィンドウでテキスト行を消去して削除しCTRL-U
、削除した行を引き出すことができますCTRL-Y
。しかし、CTRL-Y
他のターミナルウィンドウや別のターミナルタブでも試してみるとうまくいきません。
私はArch Linux x86_64のKDEデスクトップ環境(プラズマ5.27.6)でbash 5.1.16、Konosleターミナルを使用しています。
答え1
最新のbash
デフォルト設定では、Ctrl-UとCtrl-はそれぞれYreadlineライブラリ関数unix-line-discard
とにバインドされていますyank
。つまり、これらの操作はbash
Konsole ではなく独自に処理されます。
シェルは他の端末ウィンドウまたはタブを認識しないため、終了したテキストをそのウィンドウまたはタブに渡すことはできません。これには、端末エミュレータに常駐するシェルではなく、Windowsシステムに実際に統合されたシェルが必要です。
bind-tty-special-chars
readline変数がOffに設定されている場合Ctrl- UTTY / PTYドライバのkill
文字機能(stty -a
および参照man termios
)のフォールバックが発生し、これはシェルから元に戻すことはできません。 - 各ターミナルタブは別々のPTYを使用して実装されるため、デバイスなので、このレイヤの問題は同じです。
したがって、答えは次のようになります。通常のシェルを使用して、あるターミナルセッションから別のターミナルセッションにテキストをコピーします(コピーされたテキストを選択bash
するために複数のPTY(GUIターミナルエミュレータなど)にまたがる可能性があるいくつかの外部メカニズムを使用せず)。 。screen
tmux