GNU/Linux >> Znalost Linux >  >> Linux

Jak používat Linuxový příkaz find k hledání souborů

V tomto příspěvku se podíváme na linux find a jak hledat a najít soubory s různými atributy.

Linux find Command

Linux find command je vestavěný výkonný nástroj, který lze použít k vyhledání a správě souborů a adresářů na základě široké škály vyhledávacích kritérií.

Soubory můžeme najít například podle jejich názvu, přípony, velikosti, oprávnění atd. Můžeme také použít find příkaz k vyhledání konkrétního textu v souboru, jehož název neznáme.

Podívejme se na některé použití find příkaz s příklady:

Vyhledávání souboru podle názvu

Pokud znáte název souboru, ale nemůžete si vzpomenout na adresář, ve kterém se nachází, můžete použít následující příkaz z kořenového adresáře:

find . -name sales.csv

Ukázkový výstup:

./accounts/sales.csv

Vyhledávání konkrétního souboru v adresáři

Pokud chcete vyhledat konkrétní soubor(y) v adresáři, můžeme použít:

find ./test -name testCases*

Ukázkový výstup:

./test/testCases10.txt
./test/testCasesPassed.txt
./test/testCasesFailed.log

Ve výše uvedeném případě hledáme pouze v adresáři „./test“.

Najít soubory podle přípony

Pro vyhledávání a hledání souborů podle určité přípony používáme:

find . -name *.jpg

Ukázkový výstup:

./test/results/failedTests.jpg
./test/project.jpg
./home/profile_pic.jpg
./tmp/cute-cats.jpg

Najít soubory nebo adresáře s určitými názvy

Abychom našli pouze soubory, musíme použít -f možnost:

find ./ -type f -name "results*"

Ukázkový výstup:

./test/results_latest.log
./test/results_archive.pdf

Abychom našli pouze adresáře, musíme použít -d možnost:

find ./ -type d -name "results*"

Ukázkový výstup:

./test/results

Najít soubory ve více adresářích

Pokud chcete prohledávat a vypisovat všechny soubory s daným názvem ve více adresářích, můžete buď začít hledat v kořenové složce, nebo pokud znáte adresáře, můžete je zadat.

Příklad:

find ./test ./logs -name failed*.* -type f

Ukázkový výstup:

./test/failed_tests.txt
./logs/failed_tests.log

Najít soubory obsahující určitý text

Někdy chcete najít soubor a neznáte jeho název, ale víte, že v něm je určitý text.

Můžete použít:

find ./test -type f -exec grep -l -i "login_scenarios" {} ;

Zde -i volba se používá k ignorování velkých a malých písmen, takže Login_Scenarios a login_scenarios budou nalezeny.

Najít soubory podle velikosti

Můžeme dokonce najít soubory různých velikostí. Možnosti velikosti jsou:

  • c bajtů
  • k kilobajtů
  • M Megabajty
  • G gigabajtů

Například k nalezení souborů v přesné velikosti používáme:

find / -size 10M

A k nalezení souborů, které jsou větší než určitá velikost, používáme:

find ./test -size +2M

Výše uvedené najde všechny soubory, které jsou větší než 2 MB ve složce ./test.

Vyhledání a odstranění konkrétních souborů

K vyhledání a odstranění konkrétních souborů používáme:

find . -type f -name "temp*" -exec rm {} ;

Závěr

V tomto článku jste se dozvěděli, jak používat příkaz linux find k vyhledávání souborů podle názvu, přípony, velikosti a typu.


Linux
  1. Jak používat Linuxový příkaz grep

  2. Jak používat příkaz historie v Linuxu

  3. Jak používat příkaz Rsync v linuxu?

  1. Jak používat Su Command v Linuxu

  2. Jak používat příkaz id v Linuxu

  3. Jak používat příkaz „screen“ v Linuxu

  1. Jak najít soubory v Linuxu

  2. Jak používat příkaz historie Linuxu

  3. Jak najít soubory v Linuxu pomocí příkazu Najít