xselコマンドを使ってクリップボードにアクセス2020/02/04

xselコマンドを使ってクリップボードにアクセス

私はLinuxにてターミナルを常に使っています。ブラウザなどへのコピーペーストが面倒くさいので、簡単にできるしくみを探していた所見つけたTipsです。 tmux や vim を使うと選択やコピーについて、上手くいかないことがありました。それが解決できたのでだいぶ便利になりました。

ざっくりの使いみちとしては、コマンドの標準出力をクリップボードに格納します。以下コマンドです。

cat 01_sample.txt | xsel -bi

以下内容のメモです。

概要

  • インストール
  • コマンド
  • セレクションについて

インストール

標準では入っていないのでaptでインストールします。

sudo apt-get install xsel

コマンド

以下コマンドで、ファイルの中身がクリップボードに格納されます。

cat 01_sample.txt | xsel -bi

出力するなら以下。

xsel -b >> 01_sample.txt

-i

入力をセレクションに設定。

-a

入力をセレクションに追記。

-0

セレクションの内容を標準出力に出力。

-b

セレクションを3.CLIPBOARDにする。

-p

セレクションを1.PRIMARYにする。

-s

セレクションを2.SECONDARYにする。

引数なしでxselを実行すると、PRIMARYセレクションの内容が標準出力に出力されます。

セレクションについて

セレクションという3つの領域がある。以下の3つ。

  1. PRIMARY
    選択したテキストが格納されている、コピーとかしなくてもドラッグなどで選択しただけのものもここに入る。
  2. SECONDARY
    通常使わないもの?詳細はまだ不明です。
  3. CLIPBOARD
    いわゆるクリップボード。

おわりに

簡単にクリップボードに内容を追加、出力ができるようになりました。なんで標準で入っていないのでしょうか。

tmuxでコピーモードにして選択、とかやるのがめんどくさかったので捗ります。xsel覚えておきます。

  • このエントリーをはてなブックマークに追加