Při práci v libovolném operačním systému někdy potřebují nástroje pro rychlé nalezení souboru. Ve skutečnosti je to pro Linux, takže všechny možné způsoby hledání souborů v tomto OS budou diskutovány níže. Zastoupeny budou jak nástroje pro správu souborů, tak příkazy použité v "Terminálu" .

Čtěte také:
Přejmenujte soubory v systému Linux
Vytvořte a odstraňte soubory v systému Linux

Terminál

Pokud potřebujete zadat mnoho vyhledávacích parametrů pro nalezení požadovaného souboru, pak je příkaz find nenahraditelný. Než uvažujete o všech svých variacích, stojí za to projít syntaxou a možnostmi. Syntaxe je následující:

find путь опция

kde cesta je adresář, ve kterém se vyhledávání objeví. Existují tři základní cesty k zadání cesty:

  • / - vyhledávání podle kořenových a sousedních adresářů;
  • ~ - vyhledat domovský adresář;
  • ./ - vyhledejte v adresáři, ve kterém je uživatel aktuálně.

Také můžete zadat cestu přímo do adresáře, kde má být soubor umístěn.

Existuje mnoho možností, jak najít , a díky nim můžete provést flexibilní konfiguraci vyhledávání zadáním potřebných proměnných:

  • -name - proveďte vyhledávání, které bude založeno na názvu prvku, který hledáte;
  • -uživatel - vyhledá soubory, které patří určitému uživateli;
  • -group - vyhledat konkrétní skupinu uživatelů;
  • -perm - zobrazit soubory se zadaným režimem přístupu;
  • -size n - vyhledávání, které vychází z velikosti objektu;
  • -mtime + n -n - hledání souborů, které se změnily více ( + n ) nebo méně ( -n ) dny;
  • -typ - vyhledá soubory určitého typu.

Existuje také mnoho typů požadovaných prvků. Zde je jejich seznam:

  • b - blok;
  • f je normální;
  • p - pojmenované potrubí;
  • d - katalog;
  • l - odkaz;
  • s je zásuvka;
  • c - znak.

Po podrobném rozboru syntaxe a možností příkazu find můžete přejít přímo na ilustrativní příklady. Vzhledem k velkému množství možností použití příkazu nejsou příklady uvedeny pro všechny proměnné, ale pouze pro ty nejpoužívanější.

Čtěte také: Populární příkazy v "Terminálu" Linux

Metoda 1: Vyhledávání podle jména (volba -name)

Nejčastěji uživatelé používají volbu -name pro vyhledávání v systému, a tak začneme s ním. Podívejme se na několik příkladů.

Vyhledávání podle rozšíření

Řekněme, že musíte najít v systému soubor s příponou ".xlsx" , která je umístěna v adresáři "Dropbox" . Chcete-li to provést, použijte následující příkaz:

find /home/user/Dropbox -name "*.xlsx" -print

Z jeho syntaxe lze říci, že vyhledávání se provádí v adresáři "Dropbox" ( "/ home / user / Dropbox" ) a požadovaný objekt by měl mít příponu ".xlsx" . Hvězdička označuje, že vyhledávání bude provedeno ve všech souborech této pobočky, aniž by bylo zohledněno jejich jméno. "-print" označuje, že se zobrazí výsledky vyhledávání.

Příklad:

Příklad provedení vyhledávání v konkrétním adresáři rozšířením souboru v linuxu

Vyhledávání podle názvu souboru

Například chcete vyhledat adresář "/ home" pro soubor s názvem " {$lang_domain} " , Ale jeho rozšíření není známo. V takovém případě je třeba provést následující:

find ~ -name " *" -print {$lang_domain} find ~ -name " *" -print

Jak vidíte, zde se používá symbol "~" , což znamená, že vyhledávání se uskuteční v domovském adresáři. Po volbě "-name" se název vyhledávacího souboru ( " {$lang_domain} * ). Hvězdička nakonec znamená, že hledání bude procházet pouze jménem, ​​aniž by se jednalo o rozšíření.

Příklad:

Příklad spuštění vyhledávání v domovském adresáři v linuxu

Vyhledávání podle prvního písmena v názvu

Pokud si pamatujete pouze první písmeno, ze kterého název souboru začíná, existuje speciální syntaxe příkazu, která vám to pomůže najít. Například chcete najít soubor začínající písmenem "g" na "l" a nevíte, který adresář je v něm. Potom musíte spustit následující příkaz:

find / -name "[gl]*" -print

Při posuzování podle symbolu "/", který se nachází hned za hlavním příkazem, bude hledání provedeno od kořenového adresáře, tj. V celém systému. Dále část "[gl] *" znamená, že vyhledávací slovo bude začínat určitým písmenem. V našem případě z "g" na "l" .

Mimochodem, pokud znáte příponu souboru, můžete ji zadat za symbolem "*" . Například musíte najít stejný soubor, ale víte, že má příponu ".odt" . Potom můžete použít tento příkaz:

find / -name "[gl]*.odt" -print

Příklad:

Příklad hledání souboru prvním písmenem a jeho příponou v linuxu

Metoda 2: Vyhledávání podle přístupového režimu (-perm možnost)

Někdy potřebujete najít objekt, jehož jméno neznáte, ale víte, jaký přístupový režim má. Potom musíte použít volbu "-perm" .

Chcete-li ji použít, je to poměrně jednoduché, stačí zadat umístění vyhledávání a přístupový režim. Zde je příklad takového příkazu:

find ~ -perm 775 -print

To znamená, že vyhledávání se provádí v domovské části a vyhledávací objekty budou mít přístup 775 . Také můžete před tímto číslem napsat znak "-", pak nalezené objekty budou mít bity oprávnění od nuly k zadané hodnotě.

Metoda 3: Vyhledávání podle uživatele nebo skupiny (možnosti -user a -group)

V každém operačním systému existují uživatelé a skupiny. Pokud chcete najít objekt patřící do jedné z těchto kategorií, můžete použít volbu "-user" nebo "-group" .

Vyhledejte soubor podle jeho uživatelského jména

Například musíte najít soubor "Lampics " v adresáři "Dropbox" , ale nevíte, co se říká, ale víte, že patří uživateli . Potom musíte spustit následující příkaz:

find /home/user/Dropbox -user user -print

V tomto příkazu jste zadali potřebný adresář ( / home / user / Dropbox ), označili, že chcete vyhledat soubor, který patří uživateli ( -user ), a označili, kterému uživateli tento soubor patří ( uživatel ).

Příklad:

hledání souboru podle uživatele v linuxu

Čtěte také:
Jak zobrazit seznam uživatelů v systému Linux
Jak přidat uživatele do skupiny v systému Linux

Vyhledejte soubor podle jména jeho skupiny

Hledání souboru, který patří do určité skupiny, je stejně snadné - stačí nahradit možnost "-user" možností "-group" a zadat název této skupiny:

find / -groupe guest -print

To znamená, že jste uvedli, že chcete najít soubor v systému, který patří do skupiny "host" . Vyhledávání se uskuteční v celém systému, jak je naznačeno symbolem "/" .

Metoda 4: Najít soubor podle jeho typu (možnost typu)

Vyhledání prvku v Linuxu určitého typu je poměrně jednoduché, stačí specifikovat příslušnou volbu ( typ ) a označit typ. Na začátku článku byly uvedeny všechny typové označení, které lze použít pro vyhledávání.

Chcete například najít všechny blokové soubory v domovském adresáři. V takovém případě bude váš tým vypadat takto:

find ~ -type b -print

Podle toho jste uvedli, že vyhledáváte podle typu souboru, jak je naznačeno volbou "-type" , a pak definujete jeho typ vložením symbolu blokového souboru - "b" .

Příklad:

vyhledejte blokové soubory pomocí příkazu -type v terminálu linux

Podobně můžete zobrazit všechny adresáře v požadovaném adresáři zadáním symbolu "d" do příkazu:

find /home/user -type d -print

Metoda 5: Vyhledejte soubor podle velikosti (volba velikosti)

Pokud znáte pouze jeho velikost ze všech informací o souboru, pak to dokonce může stačit k nalezení. Pokud například chcete v určitém adresáři najít soubor o velikosti 120 MB, proveďte následující kroky:

find /home/user/Dropbox -size 120M -print

Příklad:

výstup příkaz najít soubor s určitou velikostí

Čtěte také: Jak znát velikost složky v systému Linux

Jak můžete vidět, soubor, který potřebujeme, byl nalezen. Pokud však nevíte, který adresář je, můžete vyhledávat celý systém zadáním kořenového adresáře na začátku příkazu:

find / -size 120M -print

Příklad:

hledání souboru s určitou velikostí v systému v linuxu

Pokud znáte velikost souboru přibližně, pak pro tento případ existuje speciální příkaz. Potřebujete napsat stejný text v "Terminálu" , těsně před zadáním velikosti souboru, vložte znak "-" (pokud potřebujete najít soubory menší než zadaná velikost) nebo "+" (pokud velikost souboru překračuje zadanou velikost). Zde je příklad takového příkazu:

find /home/user/Dropbox +100M -print

Příklad:

Vyhledejte soubor větší než ten zadaný v linuxu

Metoda 6: Vyhledání souboru podle data změny (-mtime možnost)

Existují případy, kdy je nejvhodnější vyhledat soubor podle data jeho úpravy. V Linuxu se pro tuto možnost používá volba -mtime . Použití je poměrně jednoduché, všechno budeme považovat za příklad.

Například ve složce Obrázky musíme najít objekty, které byly upraveny posledních 15 dní. Zde je třeba se zaregistrovat do "Terminálu" :

find /home/user/Изображения -mtime -15 -print

Příklad:

příklad nalezení souborů podle data poslední změny pomocí příkazu find v linuxu

Jak vidíte, tato možnost zobrazuje nejen soubory, které se změnily v určeném období, ale také složky. Pracuje také v opačném směru - objekty, které byly po uplynutí stanovené doby změněny. Chcete-li to provést, zadejte znak "+" před číselnou hodnotou:

find /home/user/Изображения -mtime +10 -print

GUI

Grafické rozhraní velmi usnadňuje život nově příchozích, kteří právě nainstalovali distribuci Linuxu. Tato metoda vyhledávání je velmi podobná metodě, která je implementována ve Windows, ačkoli nemůže poskytnout všechny výhody, které Terminal nabízí. Ale o všechno v pořádku. Podívejme se tedy na to, jak vyhledávat soubory v systému Linux pomocí grafického rozhraní systému.

Metoda 1: Procházejte systémovou nabídkou

Nyní se podíváme, jak najít soubory prostřednictvím systému Linux. Provedené akce budou provedeny v distribuci Ubuntu 16.04 LTS, nicméně instrukce je pro všechny společná.

Čtěte také: Jak zjistit verzi distribuce systému Linux

Řekněme, že musíte najít soubory pod názvem "Najít" v systému, také tyto soubory v systému jsou dva: jeden ve formátu ".txt" a druhý - ".odt" . Chcete-li je najít, musíte nejprve kliknout na ikonu nabídky (1) a ve speciálním poli pro zadání (2) zadejte vyhledávací dotaz "Najít mě" .

Zobrazí se výsledek vyhledávání, ve kterém budou zobrazeny hledané soubory.

Výsledky vyhledávání souborů z nabídky systému v linuxu

Pokud by však systém měl mnoho takových souborů a všechny se lišily v rozšířeních, hledání by se stalo složitějším. Chcete-li vyloučit zbytečné soubory, například programy, na výstupu výsledků, je nejlepší použít filtr.

Nachází se na pravé straně nabídky. Můžete filtrovat podle dvou kritérií: "Kategorie" a "Zdroje" . Rozbalte tyto dva seznamy klepnutím na šipku vedle názvu a výběrem odstraňte z nepotřebných položek v nabídce. V tomto případě bude rozumnější ponechat pouze vyhledávání souborů a složek , protože hledáme soubory.

nastavení filtru v nabídce systému Linux při hledání souborů

Okamžitě můžete zaznamenat nevýhodu této metody - filtr nelze vyladit, jako v "Terminálu" . Takže pokud hledáte textový dokument s názvem, můžete na výstupu zobrazit obrázky, složky, archivy apod. Ale pokud znáte přesný název požadovaného souboru, můžete ho rychle najít, aniž byste se dozvěděli o mnoha způsobech příkazu "najít" " .

Metoda 2: Procházejte správce souborů

Druhá metoda má významnou výhodu. Pomocí nástroje Správce souborů můžete vyhledat v zadaném adresáři.

Tato operace je velmi snadná. V správci souborů, v našem případě Nautilus, musíte zadat složku, kde má být požadovaný soubor umístěn, a klikněte na tlačítko "Hledat" umístěné v pravém horním rohu okna.

hledání ve správci souborů nautilus v linuxu

Ve vstupním poli, které se zobrazí, musíte zadat očekávaný název souboru. Také nezapomeňte, že vyhledávání nemůže být provedeno celým názvem souboru, ale pouze jeho částí, jak je uvedeno v následujícím příkladu.

vyhledejte soubor podle jeho jména v správci souborů Nautilus v Linuxu

Stejně jako v předchozí metodě můžete použít filtr stejným způsobem. Chcete-li jej otevřít, klikněte na tlačítko se znaménkem "+" umístěným na pravé straně vyhledávacího pole. Otevře se podnabídka, ve které můžete vybrat typ souboru z rozevíracího seznamu.

filtr v hledání správce souborů nautilus v linuxu

Závěr

Z výše uvedených skutečností lze konstatovat, že pro rychlé vyhledávání v systému je druhá cesta založená na použití grafického rozhraní dokonalá. Pokud potřebujete zadat mnoho parametrů vyhledávání, příkaz find bude v "Terminálu" nenahraditelný.