投稿日:
【ターミナルの使いやすさ抜群に】標準出力に対する最強の検索ツール「Peco」をインストールしたら幸せになった【バイバイgrep/find】
YouTubeも見てね♪
ねこじゃすり
猫を魅了する魔法の装備品!
Anker PowerCor
旅行には必須の大容量モバイルバッテリー!
[ノースフェイス] THE NORTH FACE メンズ アウター マウンテンライトジャケット
防水暴風で耐久性抜群なので旅行で大活躍です!
ペヤング ソースやきそば 120g×18個
とりあえず保存食として買っておけば間違いなし!
モンスターエナジー 355ml×24本 [エナジードリンク]
脳を活性化させるにはこれ!
ドラゴンクエスト メタリックモンスターズギャラリー メタルキング
みんな大好き経験値の塊をデスクに常備しておこう!
MOFT X 【新型 ミニマム版】 iPhone対応 スマホスタンド
Amazon一番人気のスマホスタンド!カード類も収納出来てかさ張らないのでオススメです!
目次
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はターミナル操作を革新的に使いやすくしてくれるツールだと筆者も感じました。
使い方によって可能性は無限大なので、皆さんも是非インストールしてみてください。