Találtam több figyelemre méltó cikket a find használatáról angolul. Egy másik, egy harmadik.
Ezekből szemezgetek:
- Keressünk
- 20 évnél idősebb állományokat keresünk az aktuális könyvtárban így:
find ./ -mtime +7300
- az utolsó 3 napban módosított állományokat így:
find . -mtime -3.
- az utolsó 3 napban módosított txt állományokat így:
find . -name '*.txt' -mtime -3
- 10000 kbytenál nagyobb állományokat így:
find . -size +10000k
- rc.conf nevű állomány keresése az aktuális könyvtárban
find . -name "rc.conf" -print
- ha megtalálta a find az rc.conf nevű állományt akkor azon végre hajtja a chmod utasítást
find . -name "rc.conf" -exec chmod o+r '{}' \;
- komplex keresés ami kihagyja az eredményből a *.v vagy .*.v nevű állományokat. Egy kis extra magyarázat: -not negálást jelent, -o a logikai OR műveletet, \( a logikai művelet kezdetét jelöli, \) pedig a végét. Egyébként a kihagyott állományok egy verzió kezelő állományai...
find /usr/src -not \( -name "*,v" -o -name ".*,v" \) '{}' \; -print
- keresés a linuxbox szóra a *.html nevű állományokban, állomány név kiiratás találat esetén.
find . -name "*.html" -exec grep "linuxbox" '{}' \; -print
- Keresés az aktuális könyvtárból indulva kis és nagybetű nem figyelembe vételével és kihagyni a .svn nevű könyvtárak tartalmát:
find . -iname "*old*" -a -not -path "*.svn*" -print
Itt igazából a -and -or -not keresési feltételek közti logikai művelet megadás lehetősége a légyeg! - Keresés az aktuális könyvtárból indulva, csak 1 könyvtár mélységben, 1 hétnél öregebb könyvtárakat visszaadva, majd egyesével töröli. Közben listázza melyiket törli...
find . -mindepth 1 -maxdepth 1 -type d -mtime +7 -exec rm -fr '{}' \; -print
- Keresés csak a kezdő mount pontban pl / (root)
find / -mount -name gmetad*
avagyfind / -xdev -name gmetad*
- A hozzászóláshoz regisztráció és bejelentkezés szükséges