Jak vyhledávat soubory
Ať už máte svůj domovský adresář rozvržen jakkoli, může se stát, že nebudete schopni něco najít, v tom vám Ubuntu samozřejmě pomůže. V Ubuntu existuje hned několik nástrojů, které vám hledání ulehčí.
Hledání souboru podle názvu
Znáte-li název souboru, můžete použít nabídku Místa → Hledat soubory, která slouží k vyhledávání souborů na discích.
- soubory můžete vyhledávat v konkrétních adresářích a samozřejmě v celém počítači
- můžete zadat část jména, text (pro čistě textové soubory) nebo časové období
- velké množství kritérií, která mohou být pro vyhledávání použita
- po poklepání na soubor se otevře příslušný program
- možnost Otevřít složku v kontextové nabídce každého výsledku vám umožní zobrazit položku ve správci souborů Nautilus
Vyhledávání v dokumentech
Instalace
Nainstalujte balík tracker
Spuštění
Tracker spustíte z nabídky Aplikace → Příslušenství → Tracker Search Tool, případně příkazem tracker
.
Nastavení
Nastavení se provádí přes nabídku Systém → Volby → Hledání a indexování, zde je potřeba povolit indexování na kartě Obecné, jinak vyhledávání nebude funkční. Patrně bude potřeba také restart systému.
Na kartě Ignorované soubory doporučuji následující nastavení:
Na kartě Soubory můžete přidat systémovou dokumentaci a adresáře s konfigurací systému, viz obrázek. Pokud chcete v některých adresářích sledovat změny pouze po spuštění systému a ne v průběhu sezení, přidejte je do Procházené složky.
Odstranění
Odstraňte balík tracker
.
Alternativa jménem Beagle
Stejně jako výše zmíněný Tracker i Beagle je tzv. desktopovým vyhledávačem. Výhodou Beaglu je velké množství zásuvných modulů, dále podporuje vyhledávání v jiných PC v rámci místní sítě. Zároveň má vyšší nároky na systémové prostředky.
Instalace
Nainstalujte balík beagle
Spuštění
Beagle spustíte z nabídky Aplikace → Příslušenství → Vyhledávání, případně příkazem beagle
.
Použití
Odstranění
Odstraňte balík beagle
.
Možnosti příkazové řádky
Pro vyhledávání se nám budou hodit především dva příkazy - find
a grep
- jejich kombinací se dá dosáhnout velmi pěkných výsledků. Vyhledávat se dá samozřejmě různě (v kombinaci s dalšími příkazy), například v instalačních balících, v procesech atd., nicméně tento návod nemá ambice pokrýt tuto problematiku celou, vydalo by to totiž na pěknou knihu.
Zde uvádím některé další (zájemce nechť se podívá na odkazy pod tímto návodem, kde lze nalézt několik seriálů o příkazové řádce v Linuxu):
find | prohledává adresářovou strukturu a výstup filtruje prostřednictvím vzorků |
grep | vyhledává vzorky v obsahu souborů |
whereis | vyhledává příkaz a s ním související zdrojové a manuálové stránky v nastavených cestách |
which | prohledává nastavené cesty a zjišťuje zda příkaz volá samostatnou utilitu |
locate | vyhledává soubory pomocí vzorků v pomocné databázi |
find
find
vždy prochází celou větev adresářové struktury, která začíná udanou cestou. Přitom hledá ty soubory (i adresář je souborem), které splňují zadané podmínky. Najde-li takové, pak může nad těmito nalezenými soubory provádět různé operace počínaje vypsáním informace o jejich umístění po spouštění nejrůznějších skriptů. find
má ohromné množství parametrů, proto doporučuji studovat pro náročnější nasazení jeho manuálovou stránku. Následujících příklady pouze demonstrují nejčastější možnosti použití a popisují jak vlastně find
pracuje.
taddeo@taddeo-laptop:~$ find
Příkaz bez parametrů vypíše seznam všech souborů a adresářů v aktuálním adresáři, a to rekurzívně, tedy i vnořené adresáře a soubory.
taddeo@taddeo-laptop:~$ find /home/taddeo/Plocha/
Příkaz vypíše seznam všech souborů a adresářů pro zadanou cestu.
taddeo@taddeo-laptop:~$ find -type d
Vyhledá pouze adresáře.
taddeo@taddeo-laptop:~$ find -name soubor.txt
Vyhledá soubor.txt v aktuálním adresáři, pokud find
soubor najde, pak k němu vypíše plnou cestu. Pokud ne, nevypíše nic.
grep
grep
na rozdíl od příkazu find
neprochází adresářovou strukturu, ale obsah předaných souborů. Ty můžeme předat buď najednou, jako seznam na příkazovém řádku, nebo pomocí vzorku. Jenže při větším počtu souborů narazíme na omezení příkazové řádky. Pak je vhodnější jej použít v kombinaci s příkazem find
, navíc tím získáme možnost sofistikovaněji předávat soubory podle dalších podmínek.
Pro více informací doporučuji tento článek Vyhledávání v Linuxu na serveru AbcLinuxu.