看板 Linux 關於我們 聯絡資訊
※ [本文轉錄自 Soft_Job 看板 #1OpuCUzP ] 作者: changyuheng (Henry) 看板: Soft_Job 標題: [心得] 命令列上的互動模糊過濾工具介紹 時間: Mon Mar 20 15:21:48 2017 下面這篇文章已經把介紹寫得很詳細了,我就不再贅述。推薦大家看看: http://www.cnblogs.com/bamanzi/p/cli-narrowing-tools.html 發這篇文章主要的目的是針對 cd 的加速。 不知道大家會不會常常在 cd 路徑的時候, 只大概記得在哪裡或是記得在哪裡但是目錄很深懶得打全。 這個時候 fzf 就很好用: https://github.com/junegunn/fzf#fuzzy-completion-for-bash-and-zsh 只要執行 cd **<TAB> 即可叫出互動式模糊搜尋介面, 找到目標之後按二次 <ENTER> 就可以進入該目錄。 但是它有一個缺點,就是它雖然已經很快又有快取, 而且還讓你用 ag 或 pt 把 find 換掉來讓它依 CPU thread 數平行遍歷目錄變得更快; https://github.com/ggreer/the_silver_searcher https://github.com/monochromegane/the_platinum_searcher 當搜尋的範圍中有 AOSP (Android 的 source code) 這種大咖時,還是慢; 就算不慢,資訊量也太大了。 於是乎,有人就想,如果能替曾經去過的目錄們建 MRU 表, 以後切目錄時如果確定有去過,從這張表搜尋就好,就會很快資訊量也不會太大。 這個功能有好幾個人做,目前最有名的是 z: https://github.com/rupa/z 但是--總是要有點波折,不然就不用發這篇文了--, z 雖然也有支援 tab completion,可是它只支援 substring filter, 而且不是互動的。 z 在超強的 fish 下使用倒是還好,因為 fish 的選單有互動搜尋介面, https://github.com/fish-shell/fish-shell 不過這是當然的,因為它就是主打這個功能才會叫 friendly interactive shell 啊! 可是 fish 沒事幹嘛改 syntax 呢…… 還有 process substitution ㄌㄟ? 所以大多數人還是繼續用 Bash 或 zsh。而且 zsh 有一個知名的髒 framework…… 咳,知名的 framework 叫 oh-my-zsh, 把它裝下去之後就能讓你的 zsh 跟 fish 有 87% 像啊! 但是!就是這個但是讓我花了點時間!它的 tab completion 還是不能互動搜尋啊! 我知道有人想說 zaw 對不對? https://github.com/zsh-users/zaw 可是 zaw 的選單不是 TAB completion 啊! 到目前為止,有 z 有 fzf,材料都齊了,就是沒人把它們兜在一起。 於是我犧牲了一點寶貴的週末把它們逗起來,下面是示意圖: https://raw.githubusercontent.com/changyuheng/fz/master/fz-demo.gif
如果你覺得不錯,這個工具解決了你的問題,可以參考這個安裝說明安裝: https://github.com/changyuheng/fz/blob/master/README-zh.md 然後,在 GitHub 專案頁面給個星吧! -- 有的人在讀書時就立下志向,有的人出社會後才找到志向,有的人經歷生死才體悟志向, 有的人遇到愛情才激起志向,有的人信仰宗教才啟發志向,有的人一輩子不知何為志向。 真正的人生是在擁有志向、找到真心想用生命去做的事時才正式開始。          改編自谷阿莫 6 分鐘看完 2016 校園男女的電影《誰的青春不迷茫》 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 45.49.193.243 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1489994526.A.F59.html ※ 編輯: changyuheng (45.49.193.243), 03/20/2017 15:23:56
jennya: 好像不錯 03/20 17:21
g12288: 厲害推 03/20 18:58
dannypsnl: 推 03/20 20:06
bootleq: 講 omz 髒就是要推 03/20 21:10
scotthsieh: 想問omz髒的點? 03/20 22:55
changyuheng: 破壞套件的版控 03/20 23:37
※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: changyuheng (45.49.193.243), 03/20/2017 23:37:45
a07051226: 還是不懂OMZ的髒點 03/21 00:13