ターミナルからテキストをコピー

提供: ArchWiki
2021年6月21日 (月) 11:18時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎mlterm)
ナビゲーションに移動 検索に移動

大抵のターミナルエミュレータでは、ユーザーがコンテンツをコピーしたり保存することができます。

一般的な方法

グラフィカルなターミナルエミュレータでは、マウスで中身を選択することができ、コンテキストメニューや編集メニュー、あるいは Ctrl+Shift+C などのキーボードショートカットでコピーできます。

CLIPBOARD セレクションが使えないターミナル

Xorg

一部のエミュレータはネイティブで CLIPBOARD セレクションをサポートしておらず、PRIMARY セレクションにデータがコピーされることがあります。そのような場合は xclip が使えます:

$ xclip -o | xclip -selection clipboard -i

上記のコマンドは PRIMARY セレクションからデータを読み込んで CLIPBOARD セレクションにデータを書き込みます。

autocutsel など他のクリップボードマネージャにはセレクションバッファを自動的に同期する機能が備わっていることもあります。

コマンドの出力の傍受

tee を使うことでコマンドの出力を傍受することができます:

$ command 2>&1 | tee output-file

command の実行後、output-file に出力結果が保存されます。

Linux ターミナルのバックログを読む

ネイティブのターミナル /dev/ttyN のバックログには /dev/vcsN からアクセスできます。/dev/tty1 を使用している場合、以下のスニペットで output-file ファイルにバックログが保存されます:

# cat /dev/vcs1 >output-file

一般的なエミュレータのチートシート

「キーコンビネーション」カラムに記載がない場合、キーボードショートカットは Ctrl+Shift+c です。

エミュレータ セレクション → PRIMARY クリップボード
キーコンビネション コンテキストメニュー ウィンドウメニュー セレクト
Alacritty Yes Yes No No No
atermAUR Yes No No No No
etermAUR Yes No No No No
germinalAUR Yes Yes Yes No No
Guake Yes Yes Yes No No
Konsole Yes Yes Yes Yes Optional
lilyterm-gitAUR Yes Yes Ctrl+Delete Yes No No
lxterminal Yes Yes Yes Yes No
mate-terminal Yes Yes Yes Yes No
mltermAUR Yes Yes No No Yes
pantheon-terminal Yes Yes Yes No No
PuTTY Yes No No No No
qterminal Yes Yes Yes Yes No
roxtermAUR Yes Yes Yes Yes No
rxvtAUR Yes No No No No
sakura Yes Yes Yes Yes No
st Yes Yes No No No
Terminator Yes Yes Yes No No
terminology Yes Yes Yes No No
Termite Yes Yes No No No
Tilda Yes Yes Yes No No
urxvt Yes Yes Ctrl+Alt+c No No Optional
xfce4-terminal Yes Yes Yes Yes No
xterm Yes Optional[1] No No Yes
Yakuake Yes Yes Yes No Optional

特殊なケース

putty

putty では xclip を使用する方法が使えます。ただし xclip を実行するのは putty が接続しているリモートマシンではなく、ローカルマシン (の他のターミナル) でなければなりません。

urxvt

テキストを CLIPBOARD に選択するには perl 拡張の selection-to-clipboard が必要です。詳しくは Rxvt-unicode#カットアンドペーストを見てください。

xterm

xterm で CLIPBOARD セレクションを使うには設定が必要です。

mlterm

​ 誤ってプロセスを終了させたくない場合は、Ctrl+Shift+c に加えて、Ctrl+Insert も使用できます。