ねこじゃすり
猫を魅了する魔法の装備品!
【最新機種】GoPro hero11 Black
最新機種でVlogの思い出を撮影しよう!
モンスターエナジー 355ml×24本 [エナジードリンク]
脳を活性化させるにはこれ!
ドラゴンクエスト メタリックモンスターズギャラリー メタルキング
みんな大好き経験値の塊をデスクに常備しておこう!
Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK
メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!
BANDAI SPIRITS ULTIMAGEAR 遊戯王 千年パズル 1/1スケール
もう一人の僕を呼び覚ませ!!
サンディスク microSD 128GB
スマホからSwitchまで使える大容量MicroSDカード!
スポンサーリンク
目次
pecoを使ってみよう
ターミナル検索
皆さんはターミナルでテキスト検索や文字列検索を行う際はどのようにやっていますでしょうか?
grep
やfind
などの標準コマンドもありますが、いかんせん使いにくいですよね。。。
そんな問題を解決するのが今回ご紹介する「peco」です!
What’s peco?
pecoとは、標準出力のデータに対してクエリーベースで検索をかけることが出来るツールとなっています。
内部的にはGo言語で書かれています。
とりあえず、ものすごい使いやすいと言う評判しか聞かないのでインストールして使い勝手を試してみましょう!
インストール手順
Homebrewでインストール
pecoもHomebrewでのインストールが可能となっていますので、以下のコマンドでささっと導入。
1 |
$ brew install peco |
以下のログが表示されればインストール完了です。
1 2 3 4 |
==> Downloading https://homebrew.bintray.com/bottles/peco-0.5.3.el_capitan.bottle.tar.gz ######################################################################## 100.0% ==> Pouring peco-0.5.3.el_capitan.bottle.tar.gz 🍺 /usr/local/Cellar/peco/0.5.3: 6 files, 4.5MB |
確認
以下のコマンドでインストールがされているか確認しましょう。
1 |
peco --version |
以下のようなログが出力されればインストールは完了です。
1 |
peco version v0.5.3 (built with go1.10) |
使い方
ディレクトリの検索
では、実際にpecoを使ってみましょう。
今回は以下のディレクトリが存在する階層で動作確認をしてみます。
1 2 3 4 5 6 |
. ├── animals ├── books ├── foods ├── games └── sports |
以下のコマンドを入力してみてください。
1 |
ll | peco |
すると、以下のような画面になると思います。
対話形式になるので、絞り込みたい文字列を入力してみましょう。
するとどんどん絞られていきますね。
前述もした通り、pecoは標準出力の結果に対するこのような操作が全てです。
また、複数キーワード対応や部分一致での絞り込みが可能なのでめちゃくちゃ便利です♪
そして、pecoの真骨頂はコマンドの組み合わせにおける効率性の向上にあります!
コマンド履歴を簡単検索
history
コマンドの結果から簡単に検索をかけて実行出来るようにしてみましょう。
zshを使っている方は以下を.zshrc
に追加してターミナルを再起動してみてください。
1 2 3 4 5 6 7 8 9 10 11 12 |
#関数定義 function pecoHistory() { BUFFER=`history -n 1 | tail -r | awk '!a[$0]++' | peco` CURSOR=$#BUFFER zle reset-prompt } #関数をウィジェットに追加 zle -N pecoHistory #ウィジェットをキーバインドに追加 bindkey '^R' pecoHistory |
これで^(Ctrl)R
でヒストリー検索及び実行が可能になります。
ショートカットでサクッと簡単に履歴を検索して実行出来るようになるので、対話形式で過去のコマンドを探して実行する事が出来るためgrep
検索よりダントツに使いやすいです!
grep
の場合は一致するキーワードをタイポすると再度コマンド打たないといけなかったり、検索結果をコピペして実行する必要があるので。。。
終わりに
このようにpecoを使った複雑なコマンドも関数として登録しておけば簡単に呼び出せるようになります。
pecoはターミナル操作を革新的に使いやすくしてくれるツールだと筆者も感じました。
使い方によって可能性は無限大なので、皆さんも是非インストールしてみてください。