fd - Jednoduchá a rychlá alternativa k nalezení příkazu
Většina uživatelů Linuxu dobře zná příkaz find a mnoho případů, které lze použít. Dnes se podíváme na alternativu příkazu find, nazvanou fd.
fd je jednoduchý, rychlý a uživatelsky přívětivý nástroj, který má jednoduše fungovat rychleji ve srovnání s nástrojem najít. Nemá zcela nahradit najít , ale poskytnout vám snadno použitelnou alternativu, která funguje o něco rychleji.
Funkce fd
Některé z pozoruhodných funkcí fd:
- Snadno použitelná syntaxe – fd *pattern* namísto find -iname *pattern*.
- Barevný výstup je podobný tomu z příkazu ls.
- Rychlý výkon. Benchmarky vývojáře jsou k dispozici zde.
- Inteligentní vyhledávání ve výchozím nastavení nerozlišuje velká a malá písmena a přepne se na rozlišování velkých a malých písmen, pokud vzor obsahuje velký symbol.
- Ve výchozím nastavení neprohledává skryté soubory a adresáře.
- Ve výchozím nastavení se nedívá do .gitignore.
- Povědomí o Unicode.
Jak nainstalovat fd v linuxu
Podíváme se na to, jak nainstalovat fd v různých distribucích Linuxu pomocí výchozího správce balíčků, jak je znázorněno.
sudo apt install fd-find [On Debian, Ubuntu and Mint]
sudo yum install fd-find [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a sys-apps/fd [On Gentoo Linux]
sudo pacman -S fd [On Arch Linux]
sudo zypper install fd [On OpenSUSE]
sudo apk add fd [On Alpine Linux]
Jak používat fd v Linuxu
Podobně jako příkaz find má fd mnoho případů použití, ale začněme kontrolou dostupných možností:
fd -h
OR
fd --help
Podívejme se na několik příkladů. fd můžete spustit bez jakýchkoli argumentů, výstup je velmi podobný příkazu ls -R.
fd
V dalších příkladech fd použiji výchozí instalaci WordPress umístěnou v /var/www/html/
k hledání různých souborů a složek.
V níže uvedeném příkladu jsem vytiskl pouze prvních 10 výsledků pro kratší výstup pomocí přesměrování potrubí pomocí příkazu head.
fd | head
Najděte všechny soubory JPG v Linuxu
Řekněme, že chceme najít všechny soubory jpg. K filtrování podle přípony souboru můžeme použít příznak “-e “
:
fd -e jpg
Pokud chcete zadat vyhledávací adresář, stačí jej zadat jako argument:
fd <pattery> <directory>
Vyhledejte řetězec ve všech souborech PHP v systému Linux
Příznak “-e “
lze použít v kombinaci se vzorem, jak je znázorněno:
fd -e php index
Výše uvedený příkaz vyhledá soubory s příponou .php
a bude v nich obsahovat řetězec „index “:
Pokud chcete některé výsledky vyloučit, můžete použít příznak “-E “
, jak je znázorněno:
fd -e php index -E wp-content
Tento příkaz vyhledá všechny soubory s příponou php, které obsahují řetězec „index “ a vyloučí výsledky z adresáře „wp-content “.
Najděte všechny soubory JPG a upravte oprávnění
Stejně jako najít můžete použít argumenty -x
nebo --exec
k provádění paralelního provádění příkazů s výsledky vyhledávání.
Zde je příklad, kdy použijeme chmod ke změně oprávnění souborů obrázků
fd -e jpg -x chmod 644 {}
Výše uvedené najde všechny soubory s příponou jpg a spustí chmod 644
.
Zde je několik užitečných vysvětlení a použití závorek:
{}
– zástupný symbol, který se změní s cestou k výsledku vyhledávání (wp-content/uploads/01.jpg).{.}
– podobně jako{}
, ale bez použití přípony souboru (wp-content/uploads/01).{/}
: Zástupný symbol, který bude nahrazen základním názvem výsledku vyhledávání (01.jpg).{//}
: Nadřazený adresář nalezené cesty (wp-content/uploads).{/.}
: Pouze základní název bez přípony (01).
Závěr
Toto byla krátká recenze příkazu fd, který se některým uživatelům může zdát jednodušší a rychlejší. Jak již bylo zmíněno dříve v tomto článku, fd nemá zcela nahradit najít, ale spíše poskytuje jednoduché použití, snadnější vyhledávání a lepší výkon. Fd nezabere mnoho místa a je to pěkný nástroj, který můžete mít ve svém arzenálu.