Jak najít soubor v Linuxu pomocí příkazového řádku

Co vědět

  • Příkaz používaný k vyhledávání souborů se nazývá nalézt. Základní syntaxe příkazu find je následující: nalézt [název souboru].
  • Po nalézt, použijte zkratku pro zadání adresáře: "." pro vnořené složky; "/" pro celý souborový systém; "~" pro domovský adresář aktivního uživatele.
  • Použijte výraz -název pro vyhledání názvu souboru. Například: find / -name *.mp3 vyhledává v celém systému souborů soubor s názvem *.mp3.

Tento článek vysvětluje, co Linuxnalézt příkaz je, nabízí zástupce umístění hledání, běžné výrazy, příklady použití, vzory, jak odeslat výstupy z příkazu find do souboru a jak najít a provést příkaz proti souboru.

Použijte příkaz 'najít' k nalezení souboru v Linuxu

Příkaz používaný k vyhledávání souborů se nazývá nalézt.

Základní syntaxe příkazu find je následující:

najít název souboru.

Aktuálně aktivní cesta ve výchozím nastavení označuje místo hledání. Chcete-li prohledat celý disk, zadejte následující:

najít / název souboru.

Pokud však chcete prohledat složku, ve které se právě nacházíte, použijte následující syntaxi:

nalézt. název souboru.
Najděte příkaz lorem.odt v okně Terminál na Ubuntu Linux

Při vyhledávání podle názvu na celém disku použijte následující syntaxi:

najít / -name název souboru.
  • První částí příkazu find je příkaz find.
  • Druhá část je, kde začít hledat.
  • Další částí je výraz, který určuje, co se má najít.
  • Poslední částí je název souboru, který se má najít.

Pro přístup k shellu (někdy nazývanému terminálové okno) ve většině distribucí klikněte na příslušnou ikonu nebo stiskněte Ctrl+Alt+T.

Zkratky pro vyhledávání umístění

První argument po příkazu find je umístění, které chcete hledat. I když můžete zadat konkrétní adresář, můžete použít a metaznak sloužit jako náhrada. Mezi tři metaznaky, které pracují s tímto příkazem, patří:

  • Doba (.): Určuje aktuální a všechny vnořené složky.
  • Lomítko (/): Určuje celý souborový systém.
  • Vlnovka (~): Určuje domovský adresář aktivního uživatele.

Prohledávání celého souborového systému může generovat chyby s odepřeným přístupem. Spusťte příkaz se zvýšenými oprávněními (pomocí příkazu sudo), pokud potřebujete hledat na místech, kam váš standardní účet běžně nemá přístup.

Výrazy

Nejběžnější výraz, který budete používat, je -název, který hledá název souboru nebo složky.

Existují však i další výrazy, které můžete použít:

  • - amin n: Soubor byl naposledy otevřen +/- n minut, v závislosti na tom, jak zadáte čas.
  • -novější: Vezme jiný soubor jako referenci k nalezení všech souborů, ke kterým se přistupovalo nedávno, a referenčního souboru.
  • -čas n: Soubor byl naposledy otevřen více/méně než n před dny, v závislosti na tom, jak zadáte cílový čas (n).
  • - cmin n: Soubor byl naposledy změněn n minut, v závislosti na tom, jak zadáte cílový čas (n).
  • -cnewer: Vezme jiný soubor jako referenci k nalezení všech souborů, ke kterým se přistupovalo nedávno, a referenčního souboru.
  • -ctime n: Soubor byl naposledy otevřen více/méně než n před dny, v závislosti na tom, jak zadáte cílový čas (n).
  • -prázdný:Soubor je prázdný.
  • -spustitelný: Soubor je spustitelný.
  • -Nepravdivé: Vždy nepravda.
  • -fstype typ: Soubor je v zadaném systému souborů.
  • -gid n: Soubor patří do skupiny s ID n.
  • -skupina název skupiny: Soubor patří do pojmenované skupiny.
  • -ilname vzor: Vyhledejte symbolický odkaz, ale ignorujte velikost písmen.
  • - vzor jména: Vyhledejte soubor, ale ignorujte velká a malá písmena.
  • -inum n: Vyhledání souboru se zadaným inodem.
  • - cesta ipath: Hledejte cestu, ale ignorujte velká a malá písmena.
  • -iregex výraz: Vyhledejte výraz, ale ignorujte velká a malá písmena.
  • - odkazy n: Vyhledání souboru se zadaným počtem odkazů.
  • -jméno jméno: Vyhledejte symbolický odkaz.
  • -mmin n: Soubor byl naposledy otevřen +/- n minut, v závislosti na tom, jak zadáte čas.
  • -mtime n: Soubor byl naposledy otevřen více/méně než n před dny, v závislosti na tom, jak zadáte cílový čas (n).
  • - jméno jméno: Vyhledání souboru se zadaným názvem.
  • - novější jméno: Vyhledání souboru upraveného nedávno, než je daný referenční soubor.
  • -bez skupiny: Vyhledejte soubor bez ID skupiny.
  • -noser: Vyhledejte soubor, k němuž není připojen žádný uživatel.
  • -cesta cesta: Hledání cesty.
  • -čitelný: Najděte soubory, které jsou čitelné.
  • - vzor regulárního výrazu: Vyhledá soubory odpovídající regulárnímu výrazu.
  • - typ typu: Hledání konkrétního typu. Možnosti typu zahrnují:
    • - typ d: Directoris
    • - typ f: Soubory
    • - typ l: Symbolické odkazy
  • -uid uid: Číselné ID uživatele souboru je stejné jako uid.
  • -uživatelské jméno: Soubor je ve vlastnictví zadaného uživatele.
  • - zapisovatelný: Hledání souborů, do kterých lze zapisovat.

Příklad použití příkazu Najít

Zde jsou některé ze způsobů, jak můžete použít příkaz find.

Jak najít soubory, ke kterým se přistupovalo před více než určitým počtem dní

Chcete-li najít všechny soubory ve vaší domovské složce, ke kterým došlo před více než 100 dny:

najít ~ -atime +100.

Jak najít prázdné soubory a složky

Chcete-li najít všechny prázdné soubory a složky ve vašem systému:

najít / -prázdný.

Jak najít všechny spustitelné soubory

Chcete-li najít všechny spustitelné soubory v počítači:

najít / -spustitelný.

Jak najít všechny čitelné soubory

Chcete-li najít všechny soubory, které jsou čitelné:

najít / -čitelné.

Vzory

Když hledáte soubor, můžete použít vzor. Vyhledejte například všechny soubory s příponou mp3:

find / -name *.mp3.

V závislosti na shellu, který používáte, možná budete muset hvězdičku opustit. Pokud příkaz spustíte a nedosáhnete očekávaných výsledků, zkuste ocitovat celý vzor, ​​abyste hvězdičku opustili, například takto: find / -name '*.mp3'

Terminál v Ubuntu Linux zobrazující příkaz " find -name *.mp3"

Jak odeslat výstup z příkazu Najít do souboru

Hlavním problémem příkazu find je to, že někdy může vrátit příliš mnoho výsledků na to, abyste si je mohli prohlédnout najednou. Výstup potrubím do ocasní příkaz, nebo vytiskněte řádky do souboru následovně:

find / -name *.mp3 -fprint nameoffiletoprintto.

Jak najít a provést příkaz proti souboru

Chcete-li vyhledat a upravit soubor současně, zadejte:

najít / -jméno souboru -exec nano '{}' \;

Výše uvedený příkaz hledá soubor s názvem filename a poté spustí nano editor pro soubor, který najde.

Nano je název příkazu, nikoli přesná část této syntaxe.