Keď ide o súbory a priečinky, ktoré efektívne nájdete na Linux systéme, existujú dva hlavné príkazy, ktoré sú k dispozícii: find a locate. Oba majú svoje silné stránky a prípady použitia. V tejto príručke sa dozvieš, ako tieto príkazy využiť na rýchle a cielené nájdenie požadovaných dát, či už v domovskom adresári alebo na celom pevnom disku.
Najdôležitejšie poznatky
- locate je rýchlejšie, pretože využíva databázu, ale môže byť zastarané.
- find hľadá priamo na pevnom disku a je vždy aktuálne, ale môže byť pomalšie.
- Oba príkazy ponúkajú rôzne možnosti na zúženie tvojich vyhľadávaní.
Príručka krok za krokom
1. Prvý prehľad: locate
Začni svoje vyhľadávanie príkazom locate. To je obzvlášť jednoduché, keď poznáš presný názov alebo časť názvu súboru. Predpokladajme, že chceš nájsť súbor „Slnko“. Prejdi do svojho koreňového adresára a zadaj nasledujúci príkaz:
locate Slnko
Týmto príkazom locate prehľadá všetky záznamy v databáze a zobrazí ti súbory, ktoré obsahujú hľadaný výraz „Slnko“.

2. Ignorovať veľké a malé písmená
Chceš pri svojom vyhľadávaní ignorovať veľké a malé písmená? Potom môžeš použiť voľbu -i:
locate -i slnko
Takto získaš zoznam, ktorý obsahuje ako „Slnko“, tak aj „slnko“.

3. Presnosť pomocou regulárnych výrazov
Ak chceš vykonať presnejšie hľadanie, môžeš s locate tiež využiť regulárne výrazy. Napríklad, ak chceš hľadať presne „ls“, môžeš použiť voľbu -b v kombinácii s chránenými zátvorkami:
locate -b '/ls'
To zabezpečí, že dostaneš len výsledky, ktoré presne zodpovedajú „ls“.

4. Aktualizácia databázy
Ak si vytvoril nový súbor a chceš zabezpečiť, aby ho locate našiel, musíš aktualizovať databázu. To vykonáš príkazom:
sudo updatedb
Tento príkaz aktualizuje databázu a privedie ju na najnovší stav.

5. Použitie find
Príkaz find je zvlášť užitočný, ak chceš definovať presnejšie kritériá pre svoje hľadanie. Napríklad, ak chceš hľadať v domovskom adresári súbor s názvom „xyz“, môžeš použiť nasledujúci príkaz:
find ~/ -name 'xyz'
Týmto sa prehľadá iba domovský adresár na „xyz“.

6. Filtrácia podľa typu súboru
Aby si hľadal len konkrétne typy súborov, môžeš použiť voľbu -type. Napríklad, aby si našiel len priečinky:
find /var/log -type d
Týmto príkazom vymenovávaš všetky priečinky v adresári /var/log.

7. Hľadanie súborov podľa veľkosti
Ak chceš hľadať súbory na základe ich veľkosti, môžeš použiť voľbu -size. Napríklad, aby si našiel súbory väčšie ako 1 MB:
find / -type f -size +1M
Tento príkaz hľadá na celom systéme súbory, ktoré sú väčšie ako 1 megabajt.

8. Hľadanie súborov v určitom časovom období
Môžeš tiež hľadať súbory, ktoré boli zmenené v určitom časovom období. Ak chceš hľadať súbory, ktoré boli zmenené v posledných 48 hodinách, použiješ:
find / -type f -mtime -2
„-mtime -2“ znamená súbory, ktoré boli zmenené v posledných dvoch dňoch.

9. Kombinácie vyhľadávacích kritérií
Kombinácia viacerých vyhľadávacích kritérií zlepšuje presnosť tvojich dopytov. Môžeš filtrovať podľa typu súboru a posledne zmeneného dátumu zároveň:
find /opt -type f -mtime -1
Takto nájdeš všetky súbory v adresári /opt, ktoré boli zmenené v posledných 24 hodinách.

10. Záver k vyhľadávaniu súborov
Pomocou príkazov find a locate si dobre vybavený na efektívne hľadanie súborov a priečinkov na tvojom Linux systéme. Môžeš si vybrať medzi rýchlosťou a aktuálnosťou údajov podľa svojich potrieb.
Zhrnutie – Hľadanie súborov a priečinkov v Linuxe – podrobne o príkazoch find a locate
Nájsť súbory a priečinky v Linuxe je s príkazmi find a locate hračkou. Oba príkazy ti ponúkajú rôzne možnosti na prispôsobenie vyhľadávania.
Najčastejšie otázky
Aký je rozdiel medzi príkazmi find a locate?find hľadá v reálnom čase na pevnom disku, zatiaľčo locate používa databázu, a teda je rýchlejšie, ale môže poskytnúť zastarané výsledky.
Ako aktualizujem databázu príkazu locate?Príkazom sudo updatedb môžeš aktualizovať databázu príkazu locate.
Môžem hľadať pomocou find podľa veľkosti súboru?Áno, je to možné pomocou voľby -size.
Akým spôsobom môžem obmedziť svoje vyhľadávanie podľa názvu súboru alebo adresára?Použi voľby -name alebo -type, aby si sa zameral na konkrétne názvy alebo typy súborov.
Aký je príklad kombinácie vyhľadávacích kritérií?Môžeš použiť find na hľadanie súborov typu -type f a zároveň určiť, že súbory boli zmenené v posledných 24 hodinách s -mtime -1.