A find parancs a Linuxban arra szolgál, hogy különböző kritériumok alapján fájlokat és könyvtárakat keressen megadott könyvtárakban. Ez a parancs az egyik legerősebb és legelterjedtebb segédprogram a Linuxban.
A find parancs alapvető formátuma a következő:
find [path] [expression]
ahol:
path
annak a könyvtárnak az elérési útvonala, amelyben a fájlokat keresni kell (alapértelmezés szerint a find az aktuális könyvtárban és annak összes alkönyvtárában keres);
expression
egy kifejezés, amely meghatározza a fájlok keresésének feltételeit.
Az alábbiakban néhány olyan leggyakoribb fájlkeresési kritériumot mutatunk be, amelyek a find parancs kifejezésében használhatók:
-name
: fájlok keresése név alapján. Például:
find /home/user -name myfile.txt
-type
: egy adott típusú fájlok keresése (például f
a normál fájlok esetében vagy d
a könyvtárak esetében). Például:
find /home/user -type f
-size
: fájlok keresése méret szerint. Például:
find /home/user -size +10M
-mtime
: fájlok keresése az utolsó módosítás ideje alapján. Például:
find /home/user -mtime -7
-user
és -group
: fájlok keresése tulajdonos és csoport szerint. Például:
find /home/user -user bob -group users
A -and
, -or
és -not logikai operátorok segítségével
több keresési feltétel egyetlen kifejezésben kombinálható.
Például a következő parancs a /home/user
könyvtárban található összes olyan fájlt megkeresi, amelyet az elmúlt 7 napban módosítottak, és amelyek mérete nagyobb, mint 10 megabájt:
find /home/user -type f -mtime -7 -size +10M
A find parancs a -exec
kapcsolóval különböző műveleteket is végezhet a megtalált fájlokon. A következő paranccsal például törölheti az összes olyan fájlt, amelyet 30 napnál régebben módosítottak:
find /home/user -type f -mtime +30 -exec rm {} ;
Itt a -exec
opció minden egyes megtalált fájlra lefuttatja az rm
parancsot, és a parancsban a fájlnevet {}-vel
helyettesíti.
A find
parancs egy hatékony eszköz a fájlok és könyvtárak keresésére a Linuxban, amely különböző kezelési feladatok elvégzésére használható.
A find
parancs számos egyéb opciót is támogat, amelyek segítségével pontosabban kereshetünk fájlokat:
-iname
: fájlok keresése név alapján, a karakterek nagy- és kisbetűinek figyelembevétele nélkül. Például:
find /home/user -iname myfile.txt
-regex
: olyan fájlok keresése, amelyek neve megfelel egy megadott reguláris kifejezésnek. Például:
find /home/user -regex ".*.txt$"
-maxdepth
és -mindepth
: korlátozza a keresés mélységét az alkönyvtárakban található fájlok esetében. Például:
find /home/user -maxdepth 2 -type f
-prune
: bizonyos könyvtárak kizárása a keresésből. Például:
find /home/user -path /home/user/excluded -prune -o -type f -print
-print
: a talált fájlok listájának kiadása a standard kimenetre. Például:
find /home/user -type f -print
A find
támogatja a fájlok különböző attribútumok, például engedélyek, fájlattribútumok, SELinux-címkék
és mások alapján történő keresését is. További információ ezekről az opciókról a find
parancs dokumentációjában található.
A parancs a teljes fájlrendszerben kereshet fájlokat és könyvtárakat, ami sok időt és erőforrást igényelhet. Ezért fontos, hogy óvatos legyen a parancs használatakor, és győződjön meg arról, hogy a keresési feltételeket helyesen állította be, hogy elkerülje a felesleges fájlok vagy hibák megtalálását a rendszerben.
Apply the discount by inserting the promo code in the special field at checkout:
Apply the discount by inserting the promo code in the special field at checkout: