用上了,Rust 打造更快文件搜索 fd 替代 find,速度非???!
今天介紹分享主題 “fd”,是一個簡單、快速且用戶友好的 “find” 替代方案。安裝后還蠻好用,主要一個高效、直觀和易用性,未來也可能成為命令行搜索的強(qiáng)大替代品選擇。
fd 介紹
簡單介紹,fd 是一個用于查找文件系統(tǒng)條目的程序,足夠簡單、快速且用戶友好的替代方案find,目前雖然不支持所有 find 強(qiáng)大功能,但它為大多數(shù)用例提供了合理的主觀的默認(rèn)值。
fd 特征
- 簡化的語法:提供了比傳統(tǒng) find 命令更簡潔的語法。
- 強(qiáng)大的模式匹配:支持正則表達(dá)式和全局模式,以適應(yīng)不同的搜索需求。
- 極速的搜索:通過了并行處理技術(shù),大幅提高了目錄遍歷的速度,真不錯。
- 顏色高亮:高亮可以增強(qiáng)了可讀性,比如顏色區(qū)分不同類型的文件等等。
- 并行命令執(zhí)行:允許同時執(zhí)行多個搜索命令,進(jìn)一步提高效率。
- 智能大小寫處理:根據(jù)搜索模式自動調(diào)整大小寫敏感性,一定很香的。
- 自動忽略隱藏文件:默認(rèn)情況下,忽略隱藏的目錄和文件。
- 集成 .gitignore:尊重開發(fā)者的忽略規(guī)則,提高搜索的準(zhǔn)確性。
命令簡短:利于減少了命令輸入的繁瑣性,提供一個便捷性。
fd 的使用
安裝可以參考手冊,然后可通過運(yùn)行 fd -h 得到一個簡潔的幫助消息,支持很多查詢方式,下面是官網(wǎng)提供一些 demo。
簡單搜索:下面僅使用一個參數(shù)來調(diào)用,fd 會以遞歸方式搜索當(dāng)前目錄中包含該模式的任何條目 netfl。
> fd netfl
Software/python/imdb-ratings/netflix-details.py
正則表達(dá)式搜索:
> cd /etc
> fd '^x.*rc$'
X11/xinit/xinitrc
X11/xinit/xserverrc
指定根目錄:比如大家想搜索特定目錄,可以將其作為fd的第二個參數(shù)
> fd passwd /etc
/etc/default/passwd
/etc/pam.d/passwd
/etc/passwd
遞歸列出所有文件:fd 還可以不帶參數(shù),很適合對于快速概覽當(dāng)前目錄中的所有條目,這是非常有用的,它可以遞歸類似于 ls -R。
> cd fd/tests
> fd
testenv
testenv/mod.rs
tests.rs
如果覺得不爽,還可以給定目錄中的所有文件,例如.或^
> fd . fd/tests/
testenv
testenv/mod.rs
tests.rs
搜索特定文件擴(kuò)展名:使用 -e(或 --extension)選項來完成。比如下面搜索 fd 存儲庫中的所有 Markdown 文件。
> cd fd
> fd -e md
CONTRIBUTING.md
README.md
該-e選項可以與搜索模式結(jié)合使用:
> fd -e rs mod
src/fshelper/mod.rs
src/lscolors/mod.rs
tests/testenv/mod.rs
更多可以閱讀官網(wǎng)文檔,好有很多好用,好玩的搜索方式喔。