Vyhledávání na webu

Fzf - Rychlé hledání fuzzy souborů z linuxového terminálu


Fzf je malý, bleskově rychlý, univerzální a multiplatformní fuzzy vyhledávač příkazového řádku, který vám pomůže rychle vyhledávat a otevírat soubory v operačních systémech Linux a Windows. Je přenosný bez závislostí a má flexibilní uspořádání s podporou pluginu Vim/Neovim, klávesových vazeb a fuzzy automatického dokončování.

Následující GIF ukazuje, jak to funguje.

Chcete-li nainstalovat Fzf, musíte git klonovat úložiště Github fzf do libovolného adresáře a spustit instalační skript, jak je znázorněno na vaší distribuci Linuxu.

git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
cd ~/.fzf/
./install

Po spuštění skriptu budete vyzváni k povolení fuzzy automatického dokončování, vázání kláves a aktualizaci konfiguračního souboru shellu. Odpovězte y (pro ano) na otázky, jak je znázorněno na následujícím snímku obrazovky.

Na platformě Fedora 26 a vyšší a Arch Linux ji můžete nainstalovat prostřednictvím správce balíčků, jak je znázorněno.

sudo dnf install fzf	#Fedora 26+
sudo pacman -S fzf	#Arch Linux 

Nyní, když jste nainstalovali fzf, můžete jej začít používat. Když spustíte fzf, otevře se interaktivní vyhledávač; přečte seznam souborů z stdin a zapíše vybranou položku do stdout.

Jednoduše zadejte do výzvy název souboru, který hledáte. Až jej najdete, klikněte na enter a relativní cesta k souboru se vytiskne do stdout.

fzf

Případně můžete uložit relativní cestu k souboru, který hledáte, do pojmenovaného souboru a zobrazit obsah souboru pomocí nástroje, jako je příkaz cat nebo bcat.

fzf >file
cat file
OR
bat file

Můžete jej také použít například ve spojení s příkazem find.

find ./bin/ -type f | fzf >file
cat file

Jak používat fuzzy dokončování v Bash a Zsh

Chcete-li spustit fuzzy dokončení pro soubory a adresáře, přidejte znaky ** jako spouštěcí sekvenci.

cat **<Tab>

Tuto funkci můžete použít při práci s proměnnými prostředí na příkazovém řádku.

unset **<Tab>
unalias **<Tab>
export **<Tab>

Totéž platí pro příkazy ssh a telnet pro automatické doplňování názvů hostitelů, které se načítají z /etc/hosts a ~/.ssh/config.

ssh **<Tab>

Funguje také s příkazem kill, ale bez spouštěcí sekvence, jak je znázorněno.

kill -9 <Tab>

Jak povolit fzf jako plugin Vim

Chcete-li povolit fzf jako plugin vim, přidejte do konfiguračního souboru Vim následující řádek.

set rtp+=~/.fzf

fzf se aktivně vyvíjí a lze jej snadno upgradovat na nejnovější verzi pomocí následujícího příkazu.

cd ~/.fzf && git pull && ./install

Chcete-li zobrazit úplný seznam možností použití, spusťte man fzf nebo se podívejte na jeho úložiště Github: https://github.com/junegunn/fzf.

Přečtěte si také: Silver Searcher – nástroj pro vyhledávání kódu pro programátory

Fzf je bleskově rychlý a univerzální fuzzy vyhledávač pro rychlé vyhledávání souborů v Linuxu. Má mnoho případů použití, například můžete nakonfigurovat vlastní použití pro váš shell. Máte-li jakékoli dotazy nebo připomínky, kontaktujte nás prostřednictvím formuláře pro zpětnou vazbu níže.