Fzf - Eine schnelle unscharfe Dateisuche vom Linux-Terminal aus
Fzf ist ein winziger, blitzschneller, universeller und plattformübergreifender Fuzzy-Finder für die Befehlszeile, mit dem Sie Dateien schnell unter Linux- und Windows-Betriebssystemen suchen und öffnen können. Es ist portabel ohne Abhängigkeiten und verfügt über ein flexibles Layout mit Unterstützung für Vim/Neovim-Plugin, Tastenbelegungen und Fuzzy-Autovervollständigung.
Das folgende GIF zeigt, wie es funktioniert.
Um Fzf zu installieren, müssen Sie das Github-Repository von fzf in ein beliebiges Verzeichnis klonen und das Installationsskript ausführen, wie auf Ihrer Linux-Distribution gezeigt.
$ git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
cd ~/.fzf/
./install
Nach dem Ausführen des Skripts werden Sie aufgefordert, die Fuzzy-Autovervollständigung und Tastenbelegungen zu aktivieren und Ihre Shell-Konfigurationsdatei zu aktualisieren. Beantworten Sie die Fragen mit y (für ja), wie im folgenden Screenshot gezeigt.
Auf Fedora 26 und höher sowie Arch Linux können Sie es über einen Paketmanager installieren, wie gezeigt.
$ sudo dnf install fzf #Fedora 26+
sudo pacman -S fzf #Arch Linux
Nachdem Sie fzf installiert haben, können Sie es verwenden. Wenn Sie fzf ausführen, wird ein interaktiver Finder geöffnet. Liest die Liste der Dateien aus stdin und schreibt das ausgewählte Element in stdout.
Geben Sie einfach den Namen der gesuchten Datei in die Eingabeaufforderung ein. Wenn Sie es gefunden haben, klicken Sie auf Enter und der relative Pfad der Datei wird in stdout gedruckt.
$ fzf
Alternativ können Sie den relativen Pfad der gesuchten Datei in einer benannten Datei speichern und den Inhalt der Datei mit einem Dienstprogramm wie cat command oder bcat anzeigen.
$ fzf >file
cat file
OR
bat file
Sie können es z. B. auch in Verbindung mit dem Befehl find verwenden.
$ find ./bin/ -type f | fzf >file
cat file
So verwenden Sie die Fuzzy-Vervollständigung in Bash und zsh
Um die Fuzzy-Vervollständigung für Dateien und Verzeichnisse auszulösen, fügen Sie die Zeichen ** als Auslösersequenz hinzu.
$ cat **<Tab>
Sie können diese Funktion verwenden, während Sie mit Umgebungsvariablen auf der Befehlszeile arbeiten.
$ unset **<Tab>
unalias **<Tab>
export **<Tab>
Das Gleiche gilt für die Befehle ssh und telnet zur automatischen Vervollständigung von Hostnamen, die aus /etc/hosts und ~/.ssh/config gelesen werden.
$ ssh **<Tab>
Es funktioniert auch mit dem Befehl kill, aber ohne die Trigger-Sequenz, wie gezeigt.
$ kill -9 <Tab>
So aktivieren Sie fzf als Vim-Plugin
Um fzf als vim-Plugin zu aktivieren, fügen Sie die folgende Zeile in Ihre Vim-Konfigurationsdatei ein.
set rtp+=~/.fzf
FZF befindet sich in der aktiven Entwicklung und kann mit dem folgenden Befehl einfach auf die neueste Version aktualisiert werden.
$ cd ~/.fzf && git pull && ./install
Um die vollständige Liste der Nutzungsoptionen zu sehen, führen Sie man fzf aus oder schauen Sie sich das Github-Repository an: https://github.com/junegunn/fzf.
Lesen Sie auch: The Silver Searcher – Ein Code-Suchwerkzeug für Programmierer
Fzf ist ein blitzschneller und universell einsetzbarer Fuzzy-Finder für die schnelle Suche nach Dateien unter Linux. Es gibt viele Anwendungsfälle, z. B. können Sie die benutzerdefinierte Verwendung für Ihre Shell konfigurieren. Wenn Sie Fragen oder Kommentare haben, kontaktieren Sie uns über das untenstehende Feedback-Formular.






