ターミナルからの標準入力の結果をシームレスに選択してクリップボードにコピーしてくれる yank
というコマンドを知りました.
yankは各種環境のパッケージが用意されています.
Debian sid amd64 / Ubuntu 21,04 amd64 / Raspberry Pi OS buster armhf では yank
というパッケージで提供されているのでこれを導入します.
$ sudo apt install yank (1)
$ yank (2)
bash: yank: command not found
$ dpkg -L yank | grep bin/ (3)
/usr/bin/yank-cli
yank
パッケージを導入- yankコマンドが見つからない
- Debian系では名前空間の衝突のためにコマンド名が
yank-cli
になっている.
とりあえず導入できましたが,Debian環境だと yank
コマンドが見つかりません.他のパッケージと名前が競合してしまっているので yank-cli
として提供されているようです.
The binary is installed at /usr/bin/yank-cli due to a naming conflict.
$ apt-file search /bin/yank
emboss: /usr/bin/yank
yank: /usr/bin/yank-cli
競合しているのはなんds楼と検索してみると emboss
というパッケージのようです.
ヨーロッパ分子生物学オープンソフトウェアスイート
EMBOSS は、分子生物学のユーザコミュニティ (例: EMBnet) のために開発された オープンソースな解析用ソフトウェアパッケージです。このソフトウェアを 使うことで、様々なフォーマットで書かれたデータを自動的に処理したり、 ウェブから配列データを透過的に取得したりもできます。また、このパッケージには 拡張ライブラリが含まれているので、真のオープンソース精神に則って ソフトウェアを開発しリリースできるプラットフォームです。 さらに、EMBOSS は様々な配列解析用パッケージやツールとシームレスに 統合されています。EMBOSS は、長く続いた商用パッケージソフトウェアへの流れを 断ち切ったのです。
なかなか熱そうなプロジェクトのようです.
使わないならalias等でyankに向けてもいいかもしれません.
とりあえず導入出来たので試してみます.
$ apt-cache search yank | yank-cli
elpa-csv-mode - Emacs major mode for editing comma/char separated values
python3-readlike - GNU Readline-like line editing module
yank - interactively select and yank terminal output to stdout or xsel
apt-cache search の結果を yank で受けてカーソルなどで単語単位で移動してEnterで選択した部分をクリップボードにコピーします.
クリップボード貼付けをするとたしかにコピーされていました.
例えばパッケージ名をコピーして, $ sudo apt install \`xsel\`
のようにして使うと便利そうです.
その他便利そうなオプションとして, -d
があります.cutコマンドの-dと同じようにデリミタが指定できます.
$ nkf -w mntemsadext00_rct.csv | yank-cli -d,
こんな感じでcsvファイルに ,
を指定してあげると,各項目がコピーできます.
しかし,yankはページ跨ぎが出来ないようです.1ページ目のものしかコピーできません.こういう場合はyankに渡す前にフィルタしてあげるといいようです.grepや,昨日このblogで紹介したyankと同じ作者の「pick」もこういうときに便利です.
$ nkf -w mntemsadext00_rct.csv | grep 田代 | yank-cli -d,`
$ nkf -w mntemsadext00_rct.csv | pick | yank-cli -d,`
なにかの結果の一部が欲しいときに便利そうです.
$ dpkg-query -W yank pick pick 2.0.2-1 yank 1.1.0-2 $ lsb_release -dr Description: Raspbian GNU/Linux 10 (buster) Release: 10 $ uname -m armv7l $ cat /proc/device-tree/model ;echo Raspberry Pi 3 Model B Rev 1.2
$ dpkg-query -W yank pick pick 2.0.2-1.1 yank 1.2.0-1 $ lsb_release -dr Description: Debian GNU/Linux bullseye/sid Release: unstable $ uname -m x86_64