Find

Pokud se vám nechce procházet tisíciřádkový výstup z man find, třeba vám pomůže těchhle pár poznámek:

find . -name pattern

Projde podstrom aktuální složky a vypíše soubory, jejichž název (bez cesty) odpovídá vzoru pattern. (Pattern je shell pattern, tedy používají se znaky “*”, “?” a “[]”; pattern musí být uzavřen v uvozovkách nebo apostrofech, aby na něj nemohl shell, ze kterého volám find.)
Např.

find . -name '*.a.gz' -execdir command \;

-execdir znamená, že příkaz command se spustí ve složce, ve které byl odpovídající soubor nalezen. Argumenty až do středníku jsou argumenty vykonávaného příkazu. Může mezi nimi být řetězec '{}', ten bude nahrazen jménem právě zpracovávaného souboru.

find . -regex pattern

pattern je tentokrát regulární výraz. Odpovídat mu musí celé jméno i s cestou, pokud tedy hledám např. soubory souvisící s ACL, nastavím pattern na '.*ACL.*'. Podobně se chová volba -iregex, find však přestane rozlišovat malá a velká písmena.