Úvod
Vše je v systému Linux považováno za soubor. Prohledávání těchto souborů je jednoduchý úkol, který musí udělat každý uživatel. Ačkoli existuje několik způsobů, jak tento úkol provést, hledání pomocí příkazu Najít je nejúčinnější a nejpohodlnější metodou k nalezení cílového souboru/adresáře.
V tomto tutoriálu se naučíte příkaz Najít, jeho možnosti a použití, které přesahují základní syntaxi.
find [file/directory path] [options] [expression]
Předpoklady
Terminálový přístup.
Poznámka: Příkazy v tomto tutoriálu se spouštějí v systému Linux Mint. Tyto pokyny jsou platné pro jakýkoli systém založený na Linuxu.
Procházet soubory/adresáře podle názvu
Chcete-li vyhledat konkrétní soubor podle názvu s volbou ‚-name‘, spusťte následující příkaz.
find /home -type f -name <filename>.txt
Podobně můžete najít adresář podle názvu pomocí následujícího příkazu.
find /home -type d -name <directory name>
Poznámka: Volba „-type“ ve výše uvedených příkazech určuje, zda hledáme soubor nebo adresář.
Hledání příkazu Find ve výchozím nastavení rozlišuje velká a malá písmena. Chcete-li vyhledávat bez rozlišení velkých a malých písmen, použijte možnost „-jméno“.
find /home -type d -iname pictures
Procházet soubory/adresáře podle přípony
Soubory můžete zúžit pomocí vzoru jejich přípon pomocí následujícího příkazu.
find /home -type f -name "*.txt"
Procházet soubory/adresáře podle typu a velikosti souboru
Chcete-li vyhledat konkrétní typ souboru, použijte volbu „-type“ v příkazu Najít.
find /home -type d
Prohledávání souborů můžete omezit poskytnutím omezení velikosti pomocí možnosti „-size“. Znak „+“ a „-“ je formát používaný pro operátory „více než“ a „méně než“.
find /home -type f -size +5M
Procházení souborů/adresářů pomocí časových razítek
Soubory můžete vyhledávat zadáním modifikace, přístupu a času vytvoření souboru pomocí voleb „-mtime“, „-atime“ a „-ctime“. Následující příkaz vyhledává soubory, které mají změněná časová razítka za poslední dva dny.
find /home -type f -name "*.txt" -mtime -2
find /home -type f -name "*.txt" -atime +4
find /home -type f -name "*.txt" -ctime -2
Procházet soubory/adresáře se specifickými oprávněními
Chcete-li najít soubory s konkrétním oprávněním, použijte možnost „-perm“. Následující příkaz vyhledá soubory s omezením pouze pro čtení.
find /home -type f -perm /u=r
Podobně následující příkaz používá volbu -perm k vyhledání spustitelných souborů.
find /home -type f -perm /a==x
Procházet soubory/adresáře podle uživatelů a skupin
Chcete-li vyhledávat soubory/adresáře podle jejich uživatele a skupiny uživatelů, spusťte příkaz find s možnostmi „-user“ a „-group“.
find /home -type f -user mintlinuxways
find /home -type f -group mintlinuxways
Procházet prázdné nebo skryté soubory/adresáře
Všechny prázdné soubory/adresáře ve vašem systému můžete najít pomocí následujících příkazů.
find /home -type f -empty
find /home -type d -empty
Vyhledat a odstranit soubory/adresáře
Soubory můžete vyhledávat a mazat současně pomocí možností „-delete“ nebo „-exec rm“ v příkazu Najít.
find /home -type f -name "*.pdf" -delete
find /home -type f -name "*.pdf" -exec rm -f {} \;
Složité příkazy
Navíc můžete výše uvedené příkazy kombinovat s možnostmi „-and“, „-or“ a „-not“ a získat tak více funkcí. Například následující příkaz hledá soubor se dvěma podmínkami.
find /home -user mintlinuxways -and -size +5M
Závěr
V tomto kurzu jste podrobně prozkoumali příkaz Najít. Naučili jste se, jak můžete použít příkaz Najít k efektivnímu vyhledávání a provádění různých operací.