GNU/Linux >> Znalost Linux >  >> Linux

Způsoby, jak používat příkaz „najít“ k efektivnějšímu vyhledávání adresářů

Tento tutoriál vás provede různými způsoby hledání adresáře v Linuxu. Jak už možná víte, v Linuxu je vše soubor včetně adresářů. A jedna z běžných věcí, kterou uživatel Linuxu dělá na příkazovém řádku, je hledání souboru nebo adresáře.

K vyhledávání souborů na příkazovém řádku se používá několik různých prostředků a nástrojů, jako je find, locate a které . Nicméně poslední nástroj (který ) se používá pouze pro vyhledání příkazu.

V rámci tohoto tutoriálu se zaměříme hlavně na nástroj find, který prohledává soubory na živém souborovém systému Linuxu a je efektivnější a spolehlivější než locate .

Nevýhodou lokace spočívá v tom, že čte jednu nebo více databází vytvořených updatedb , neprohledává živý souborový systém. Kromě toho nenabízí tak dobře flexibilitu ohledně toho, odkud hledat (počáteční bod).

Níže je uvedena syntaxe pro spuštění locate příkaz:

# locate [option] [search-pattern]

Demonstrovat nevýhodu lokace , předpokládejme, že hledáme adresář s názvem pkg v aktuálním pracovním adresáři.

Poznámka :V níže uvedeném příkazu volba --basename nebo -b říká lokat aby odpovídal pouze základnímu názvu souboru (adresáře) (což je přesně pkg ), ale ne cestu (/cesta/k/baleni ). Kde \ je globbing znak, zakazuje implicitní nahrazení pkg od *pkg* .

$ locate --basename '\pkg'

Jak můžete vidět z výstupu příkazu výše, najděte bude hledat od kořene (/) adresář, proto jsou porovnány další adresáře se stejným názvem.

K řešení tohoto problému proto použijte najít podle níže uvedené zjednodušené syntaxe:

$ find starting-point options [expression]

Podívejme se na několik příkladů.

Chcete-li vyhledat stejný adresář (pkg) výše v aktuálním pracovním adresáři spusťte následující příkaz, kde -name flag čte výraz, který je v tomto případě základním názvem adresáře.

$ find . -name "pkg"

Pokud narazíte na „Oprávnění odepřeno ” chyby, použijte příkaz sudo takto:

$ sudo find . -name "pkg"

Pomocí -type můžete zabránit hledání hledání jiných typů souborů kromě adresářů příznak k určení typu souboru (v příkazu níže d znamená adresář) takto:

$ sudo find . -type d -name "pkg"

Kromě toho, pokud chcete vypsat adresář ve formátu dlouhého výpisu, použijte přepínač akce -ls :

$ sudo find . -type d -name "pkg" -ls

Dále možnost -iname povolí vyhledávání bez rozlišení velkých a malých písmen:

$ sudo find . -type d -iname "pkg" 
$ sudo find . -type d -iname "PKG" 

Chcete-li najít zajímavější a pokročilejší informace o použití, přečtěte si manuálové stránky najít a najít .

$ man find
$ man locate

Poslední poznámkou je, že příkaz find je spolehlivější a efektivnější pro vyhledávání souborů (nebo adresářů) v systému Linux, když je porovnán s locate příkaz.

Stejně jako dříve nám nezapomeňte poslat svůj názor nebo dotazy prostřednictvím sekce komentářů níže. Nakonec zůstaňte vždy připojeni k Tecmint .


Linux
  1. Jak používat příkaz „najít“ k hledání více názvů souborů (přípon) v systému Linux

  2. 4 způsoby, jak najít veřejnou IP adresu serveru v terminálu Linux

  3. Jak používat příkaz Grep k vyhledání textu v souborech

  1. Použijte Najít a najít k vyhledání souborů v Linuxu

  2. Průvodce linuxovým příkazem „Najít“.

  3. Jak používat regex s příkazem find?

  1. 5 způsobů, jak použít příkaz move v Linuxu

  2. Použít příkaz Grep a vyhledat?

  3. Použijte příkaz find, ale vylučte soubory ve dvou adresářích