pecoはpytyon製ツールpercolを参考にgo言語で実装された対話型フィルタリングツールです。
使い方
通常のコマンドと同様、パイプで繋いで実行します。
$ ls | peco
pecoが実行されると、クエリの入力画面がでます。
QUERY> IgnoreCase [97 (1/5)] 121025/ 121212.log Applications/ Desktop/ Documents/ ...
十字キーがついている場合は、右左でページ送りができます。
QUERY> IgnoreCase [97 (2/5)] blog.org blog.txt brewlist.log contor_data/ contour_data.zip development.sqlite3 development_withRole.sqlite3 emacs-w3m-1.4.4/ ...
クエリを入力すると、フィルタリング結果がでます。
QUERY> txt IgnoreCase [12 (1/1)] blog.txt hatenablog.txt labnote1031.txt lecturenote1101.txt list.txt mail.txt memolize.txt note.txt ports.txt rectureMemo.txt sample.txt 事業計画.txt
デフォではAND検索です。
QUERY> txt ha IgnoreCase [1 (1/1)] hatenablog.txt
終わったらエンターキーで確定です。
$ ls | peco hatenablog.txt
オプションで色々カスタマイズできる
スゴイ点として、キーバインドや色などの設定を自分で定義できる点が上げられます。
正規表現検索をデフォにしたり、一致した内容の色を自分好みに変更できたりします。
詳しい事は公式を参考にしてください。