Jak najít soubor podle názvu v Linuxu

Najděte své soubory bez námahy z příkazového řádku v Linuxu

Uživatelé se obvykle snaží najít soubor pomocí GUI. Někdy se však stává velmi únavnou prací najít jednotlivý soubor v obrovské hromadě souborů ve vašem systému. Najít to konvenčně může být časově náročný úkol. Aby byl tento úkol snazší, Linux nabízí určité příkazy, které tuto práci provedou za vás.

nalézt je populární příkaz používaný v systémech Linux, který vám může pomoci hledat různé soubory na základě jejich názvů, typu, přípony, oprávnění, vlastníka atd.

V tomto tutoriálu se zaměříme na hledání souborů podle názvu. Podíváme se na různé argumenty, které lze použít s nalézt příkaz. Dozvíme se také o lokalizovat což je také rychlejší způsob vyhledávání souborů podle názvu.

Syntaxe pro nalézt příkaz

Za použití nalézt správným způsobem může váš úkol usnadnit. Nalezení souborů konkrétního typu nebo přípony nebo vyhledávání podle názvu bude možné, pokud dobře rozumíte obecné syntaxi tohoto příkazu.

Obecná syntaxe pro nalézt příkaz je následující.

najít [hledací_cesta] [výraz] [možnosti] [najít_co]

Snažil jsem se zjednodušit syntaxi nalézt příkaz k lepšímu pochopení příkazu.

Podívejme se na každý atribut syntaxe, abychom získali představu o významu každého z nich.

Search_Path: Zde přichází cesta, kde zadáme cestu, odkud chceme, aby systém začal hledat soubor. Stručně řečeno, je zadán počáteční adresář pro spuštění vyhledávání.

Výraz: Můžete zadat vzory vyhledávání pro konkrétní soubor, který hledáte.

Možnosti: Můžete použít dostupné možnosti používané s nalézt příkaz v tomto prostoru.

najít co: Do tohoto atributu vložte název nebo část názvu souboru, který má být prohledán.

Ukažme si tento příkaz na příkladu.

najít /home/gaurav/workspace -name "source.c"

V tomto příkazu používám nalézt příkaz k vyhledání souboru „source.c“. Požádal jsem konkrétně o hledání v cestě „/home/gaurav/workspace“. Za použití -název volba mi umožňuje prohledávat soubor určený „source.c“.

Toto je nejjednodušší ukázka použití nalézt příkaz.

Vyhledávání souborů v aktuálním adresáři

Za použití nalézt ve své nejjednodušší podobě je hledání souborů ve vašem aktuálním pracovním adresáři.

najít

Tento příkaz zobrazí všechny soubory ve vašem aktuálním pracovním adresáři. Zde je ‚.“ znamená „aktuální pracovní adresář“. Následuje výstup z mého aktuálního pracovního adresáře. Všechny soubory v tomto adresáři jsou uvedeny bez jakýchkoli filtrů

Výstup:

. ./context_log.policy ./snap ./snap/couchdb ./snap/couchdb/current ./snap/eclipse ./snap/eclipse/current ./snap/vim-editor ./snap/vim-editor/current ./ snap/vim-editor/common ./snap/vim-editor/1 ./snap/htop ./snap/htop/current ./snap/htop/common ./snap/htop/common/.local ./snap/htop /common/.local/lib ./snap/htop/common/.local/lib/locale ./snap/htop/common/.local/lib/locale/en_IN.UTF-8 ./snap/htop/common/. local/lib/locale/en_IN.UTF-8/LC_CTYPE

Chcete-li vyhledat soubor, jehož přibližný název je znám, použijte nalézt příkaz, jak je znázorněno níže.

najít -name [řetězec_ze_souboru\*]

Příklad:

najít -kontext jména\*

Tento příkaz hledá soubory, které obsahují řetězec ‚kontext‘.

Výstup:

./context_log.policy ./context.xml ./context_preview.c

Jsou uvedeny všechny soubory v aktuálním adresáři, který obsahuje řetězec ‚kontext‘.

Nyní nastává problém s tímto příkazem, když se pokusíte ponechat si při psaní názvu souboru nebo přibližného řetězce možnost rozlišovat malá a velká písmena.

Linux je velmi opatrný, pokud jde o rozlišování malých a velkých písmen, a proto existuje velká šance, že vaše vyhledávání selže. Nedostanu výstup pro příkaz find, pokud použiji řetězec jako „CONTEXT“ místo „kontextu“. I když je jedno písmeno v názvu souboru v jiném případě než původní název souboru, hledání se nezdaří.

Ale není třeba se tím trápit. Můžete jednoduše vyměnit -název možnost s -jméno. To vám umožňuje vyhledávat soubory bez ohledu na to, v jakých případech je jejich název. Stačí provést tuto jednoduchou změnu ve vašem příkazu a budete v pořádku.

najít -jméno CONT\*

Výstup bude stejný, i když jsem použil řetězec ve velkých písmenech.

./context_log.policy ./context.xml ./context_preview.c

Vyhledávání souborů v různých adresářích

Můžete snadno vyhledávat soubory v libovolném adresáři v systému Linux bez ohledu na adresář, ve kterém právě pracujete.

najít [cesta_adresáře] -jméno [konkrétní_název_souboru]

Příklad:

vyhledejte /home/gaurav/tomcat -iname ath.html

Zde jsem hledal konkrétní soubor ‚ath.html‘ a ne soubory podobné tomuto řetězci. Výstupem tedy bude pouze konkrétní soubor, jak je uvedeno výše.

/home/gaurav/tomcat/ath.html

Nyní předpokládejme, že neznáme celý název souboru, ale pouze řetězec tohoto názvu souboru. Poté můžeme prohledávat soubory následujícím způsobem.

najít /home/gaurav/tomcat -iname ath\*

Tento příkaz vyhledá všechny soubory, které na začátku obsahují řetězec ‚ath‘. Použil jsem -jméno možnost zde, takže se nemusím starat o rozlišení velkých a malých písmen.

Výstup:

/home/gaurav/tomcat/ATHENIAN_ART.html /home/gaurav/tomcat/ath_things.html /home/gaurav/tomcat/ath.html /home/gaurav/tomcat/ATHENIAN_ART.pdf /home/gaurav/tomcat/ATHHHHhow.html

Příkaz můžete také použít k vyhledání více souborů, které mají v názvu podobnou příponu.

Příklad:

najít /home/gaurav/tomcat -iname "*.c"

Příkaz vyhledá všechny soubory v zadaném adresáři, který obsahuje .c jako příponu v jejich názvu souboru.

Výstup:

/home/gaurav/tomcat/stiil.c /home/gaurav/tomcat/project/temp.c /home/gaurav/tomcat/copy.c /home/gaurav/tomcat/gy.c

Dozvěděli jsme se o nalézt příkaz k vyhledání souborů zadaných názvem souboru. Nyní prozkoumáme ještě jeden příkaz, který je rychlejší než konvenční nalézt příkaz.

lokalizovat přehled příkazů

Existuje ještě jeden příkaz pro vyhledávání souborů ve vašem systému, který je rychlejší než příkaz nalézt příkaz. to je lokalizovat příkaz. Tento příkaz není v distribucích Linuxu předinstalován. Ke stažení a instalaci můžete použít následující kroky lokalizovat příkazový balíček do vašeho systému.

Pro systémy Ubuntu a Debian, použijte:

aktualizace sudo apt sudo apt install mlocate

Pro systémy Cent Os a Fedora, použijte:

sudo yum install mlocate

Příkaz locate hledá soubor podle daného vzoru na vstupu. lokalizovat používá databázový soubor k vyhledávání souborů, tento databázový soubor je generován aktualizovánob příkaz.

sudo aktualizovánob

Čas potřebný k aktualizaci tohoto databázového souboru se může lišit od uživatele k uživateli v závislosti na souborech ve vašem systému.

Za použití lokalizovat příkaz

Můžete použít lokalizovat příkaz následujícím způsobem. Nezapomeňte aktualizovat soubor databáze pomocí příkazu sudo aktualizovánob.

Syntax:

vyhledejte [název_souboru nebo_část_název_souboru]

Tento příkaz spustí vyhledávání z kořenového adresáře. Vrátí seznam všech souborů v systému, který obsahuje název souboru nebo část názvu souboru, jak je zadáno v příkazu.

Příklad:

vyhledejte kopii.c

Výstup:

/home/gaurav/Downloads/git-2.23.0/copy.c /snap/core/9804/usr/lib/python3.5/__pycache__/copy.cpython-35.pyc /snap/core/9993/usr/lib /python3.5/__pycache__/copy.cpython-35.pyc /snap/core18/1880/usr/lib/python3.6/__pycache__/copy.cpython-36.pyc /snap/core18/1885/on3/lib/pyth .6/__pycache__/copy.cpython-36.pyc /snap/core20/634/usr/lib/python3.8/__pycache__/copy.cpython-38.pyc /usr/lib/python3.5/__pycache__thoncopy.c -35.pyc /usr/lib/python3.6/__pycache__/copy.cpython-36.pyc /usr/share/icons/MacBuntu-OS/apps/128/copy.com.png

Zvýrazněný řádek ukazuje, že byl nalezen přesný soubor ‚copy.c‘. Spolu s tímto výsledkem jsou zobrazeny také některé další soubory, které obsahují ‚copy.c‘ jako součást jejich souboru.

Abyste se vyhnuli změti dalších nežádoucích souborů a našli pouze požadovaný soubor, můžete použít příkaz locate následujícím způsobem.

vyhledejte -b '\název souboru'

Příklad:

vyhledejte -b '\copy.c'

Výstup:

/home/gaurav/Downloads/git-2.23.0/copy.c

Konkrétní soubor uvedený v kritériích vyhledávání je uveden spolu s cestou k adresáři, kde se nachází.

Za použití lokalizovat Příkaz se může zdát trochu složitý, ale je rychlejší metodou pro vyhledávání souborů, když neznáte přesné umístění tohoto souboru. Načítání souborů bude super rychlé, když aktualizujete databázový soubor, který používá příkaz locate.

Závěr

V tomto krátkém tutoriálu jsme se dozvěděli o dvou důležitých příkazech, nalézt a lokalizovat. Nyní můžete snadno vyhledávat soubory ve vašem systému, aniž byste se ztratili v hromadě souborů. Použití těchto příkazů se jistě ukáže jako časově úsporné a efektivní pro váš úkol pro vyhledávání souborů.