ターミナルの出力をクリップボードにコピーする

Linux Mintのヒントとテクニック

ターミナルの出力をクリップボードにコピーする

投稿記事by firefly » 2014年10月01日(水) 02:50

メンバーの皆様、ユーザの皆様はじめまして。既に色々書き込んでしまっていますがご挨拶が遅れて申し訳ありません。Linux Mint は数年前に導入して、暫く使っていなかったのですが最近本格的に使い始めたのでこちらのフォーラムを利用させていただいております。まだ Linux Mint に関してはビギナーですが宜しくお願いします。

Linux Mint 普及ために貢献できるかどうかはわかりませんが、ちょっとしたティップスを書かせて頂きたいと思います。今回書かせていただくのは件名の通りですが、ターミナルで実行したコマンドの結果を Ctrl+Shift+C を使わずにクリップボードにコピーする方法です。フォーラムへの投稿がちょっぴり楽になる…かもしれません。このティップスを使用するには xclip パッケージが必要ですのでパッケージマネージャ等でインストールしてください。シェルの作法についてはここではあまり詳しく取り扱いません。

この xclip ですが、例えば ls の出力であれば以下のようにパイプで繋ぐことで ls の内容がクリップボードへコピーされます。
コード: 全て選択
ls | xclip -in -sel clip

逆にクリップボードの内容を端末に出力することもできます。
コード: 全て選択
xclip -out -sel clip

毎回 xclip -in -sel clip と書くのは面倒なので .bashrc や .zshrc に alias または関数を登録しておくと便利です。ここでの名前は他 OS のものを流用していますのでシステムに存在するコマンドと被らないようにお好きな名前で登録してください。登録した内容はもう一度設定ファイルを読み込むか、次回ターミナルを起動した際に有効になります。
コード: 全て選択
alias pbcopy="xclip -in -sel clip"
alias pbpaste="xclip -out -sel clip"

これにより先程の作業が以下の手順で行えるようになります。
コード: 全て選択
ls | pbcopy

テキストファイルの内容をそのままクリップボードへコピーする場合はリダイレクトを使用します。
コード: 全て選択
pbcopy </etc/lsb-release

これらを応用して「クリップボードの内容を書き換えてクリップボードに戻す」ということも可能です。以下にいくつか例を挙げます。

クリップボードの内容から改行を取り除いてクリップボードへコピーする
コード: 全て選択
pbpaste | tr -d \\n | pbcopy

クリップボードの内容から「firefly」という文字を「foo」に置き換えてクリップボードへコピーする
コード: 全て選択
pbpaste | sed "s/firefly/foo/g" | pbcopy


また、ターミナルアプリケーションとして Yakuake もおすすめです。
Yakuake はちょっと変わったターミナルアプリケーションで、F12 キーを押すことで画面の上からスライドして出てきます(もう一度 F12 を押すかウィンドウが切り替われば引っ込みます)。テキストエディタ等で文章を書いている時にマウスなどを使わずにすぐにターミナルにアクセスできたり、背景の透過にも対応しているので後ろのウィンドウの内容をチラ見しながらコマンドの入力ができるというのがおすすめポイントです。
どのようなアプリケーションなのかはネット上にスクリーンショットもたくさん掲載されていますので「Yakuake」で検索してみてください。


では皆さん良い Linux Mint ライフを!
17.1 Cinnamon 32-bit / 17 KDE 32-bit / 17 Xfce 32-bit
Pentium D 925 / 4 GB RAM / GeForce GTX-260
いつまでいるかはわかりません :o
firefly
序二段
 
記事: 34
登録日時: 2014年9月12日(金) 17:48

Return to ヒントとテクニック

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[12人]

cron