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čí.
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.
Nainstalujte balík tracker
Tracker spustíte z nabídky Aplikace → Příslušenství → Tracker Search Tool, případně příkazem tracker
.
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.
Odstraňte balík tracker
.
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.
Nainstalujte balík beagle
Beagle spustíte z nabídky Aplikace → Příslušenství → Vyhledávání, případně příkazem beagle
.
Odstraňte balík beagle
.
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
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
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.