A terminállal: Példák a Find paranccsal

Íme néhány példa, amelyeket kihasználhatunk, amikor használjuk Találjon, fájlok vagy mappák keresésére szolgáló parancs.

Ha segítségre van szüksége a parancsfuttatáshoz:

man find

a kézikönyv elhagyásához csak nyomja meg a gombot [Q] (bármely kézikönyvre érvényes).

A következő példákban a periódus (.) A keresés (keresés) után azt jelenti, hogy a prompt által jelzett mappában keresünk. Bármely érvényes útvonal helyettesíthető, például / home /.

Példák:

Csak keressen fájlokat mintával.
find . -type f -name "*.deb"

megkeresés és másolás a / home / pepe / könyvtárba
find . -type f -name "*.deb" -exec cp -f {} /home/pepe/ \;

Keresse meg a Thumbs.db fájlokat, és törölje őket.
find . -type f -name "Thumbs.db" -exec rm -f {} \;

Hozzon létre egy tiszta szöveges fájlt az md5 fájlokkal a könyvtárban.
find . -type f -print0 | xargs -0 -n 1 md5sum >> md5.txt

Törölje a bosszantó .svn mappákat.
find | grep "\.svn$" | xargs rm -fr

Cserélje le az egyik szöveget egy másikra.
find -type f | xargs sed -i "s/TEXTO/OTRO/g" *.php

Legutóbb frissített fájlok keresése.
find /var/log/[a-z]* \*.sql -mtime +1

A DEB csomagok md5sums fájljainak előállításához:
find . -type f ! -regex ‘.*\.hg.*’ ! -regex ‘.*?debian-binary.*’ ! -regex ‘.*?DEBIAN.*’ -printf ‘%P ‘ | xargs md5sum > DEBIAN/md5sums


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   megfelelő dijo

    törölje az összes fájlt, kivéve a .txt fájlt (a .txt nyilvánvalóan bármi lehet)
    megtalálja. ! -name "* .txt" -exec rm {} \;

    keresés kis- és nagybetűk nélküli egyezések nélkül:
    megtalálja. -iname «* foobar *»

    Megjegyzés: az -exec parancs nem futtatható a -iname paraméterrel.

  2.   taregon dijo

    Kiváló 😉 ezt a parancsot kötelezően ismernie kell, mielőtt megijedtem az „emberben” meglévő lehetőségektől, hogy képesek legyek kereséseket végezni, de lehetőséget adva rá, hogy láthatom, milyen erős, amikor megtalálom, amit elfelejtettem a merevlemezemen 😐

  3.   Hugo dijo

    A Keresés minden bizonnyal hasznos, különösen a szóközöket és más szokatlan karaktereket tartalmazó fájlnevek kezelésében. Például emlékszem egyszer, hogy semmilyen módon nem sikerült a könyvtárak tömörítését, amíg fel nem merült bennem, hogy a keresést használjam az xargs-szal (ami egyébként sokkal gyorsabb, mint az -exec), és a probléma megoldódott.

    A find parancs másik előnyös használata az engedélyek rekurzív módosítása:


    find . -type d -print0 | xargs -0 chmod 755
    find . -type f -print0 | xargs -0 chmod 644

  4.   elektron222 dijo

    Érdekes ^ _ ^

    1.    KZKG ^ Gaara dijo

      Mennyire néz ki a csakra ikon hahahahahaha 😀

      1.    ostrom84 dijo

        Mageia eltűnt 🙂

        1.    KZKG ^ Gaara dijo

          Igen, 😀
          Jelenleg ezen a hehehehe-n alapulok. Köszönöm 🙂

          1.    lesterzone dijo

            És egyet a terjesztésemre ...

  5.   íjászat dijo

    Köszönöm, a parancsok nagyon hasznosak, kétlem, hogy emlékszem, hogy az Ubuntuban egyszer a locate parancsot használtam, ez valami alias a find vagy ...

    1.    Hugo dijo

      Negatív. elhelyez, mlocate y görcsölni más keresési parancsok, amelyek nem talál, olyan adatbázist használnak, amelyet rendszeresen frissíteni kell a paranccsal frissítve b.

      Mindkét típusú parancsnak van felhasználása. Én például általában használom frissítve b majd ezt követi mlocatekeresse meg, amikor valóban szeretnék valami gyorsat találni egy olyan könyvtárban, ahol sok olyan adat található, amelyről tudom, hogy nem frissül túl gyakran (például egy csomag a tárban), és talál amikor valami összetettebb dolgot akarok végrehajtani, például a keresési eredmények kombinálását egy másik paranccsal, vagy amikor egyszerűen nem akarom létrehozni az adatbázist, mert tudom, hogy az a könyvtár, amelyben keresni fogok, nem tartalmaz túl sok információt.

      1.    íjászat dijo

        Köszönöm szépen Hugo, kiváló magyarázat, csak azt tudom mondani, hogy a terminál milyen erős a gnu / linux-ban!

  6.   sandra dijo

    Szia, látom, hogy ez egy régi téma, de remélhetőleg még mindig tudsz segíteni nekem.

    Megtanulom használni a regexp-et, mivel láttam egy dokumentumot, és a hibát vagy a sikertelenséget és a derivált hibákat vagy a sikertelen vagy sikertelen stb szavakat keresem, és a regexp a következő:
    : / \ (. * \ (hiba | sikertelen). * \) /
    A végrehajtáskor azt mondja nekem, hogy nincsenek egyezések 🙁, hanem
    :/\(.*\(hiba\).*\)/
    o
    : / \ (. * \ (sikertelen). * \) /
    Ha talál találatokat, elmondanád, hogy tévedek?

    1.    KZKG ^ Gaara dijo

      Mi a teljes sor, amit teszel?

      Kipróbálni, és hátha megtalálom a megoldást.

      Másrészt, ha szeretné, itt ellenőrizheti: https://blog.desdelinux.net/?s=expresiones+regulares

  7.   esthefani dijo

    Kérem, segítsen nekem, át akarom másolni a * _ZFIR0069.TXT végződésű fájlokat egy másik útvonalra, és egy dátumot szeretnék hozzáadni a végén, parancsot hajtok végre:

    dátum = $ (dátum + »% Y% m% d%»)
    find / xcom_rep / FATF / exit / 42 -name * _ZFIR0069.TXT -exec cp -p {} / backup / FATF / exit / 42 / {} _ $ date \;

    De az eredmény:

    {} _20160225% ->, de csak egy fájlt másol az összesből, és így nevezik át

    Azt akarom, hogy másolja át az összes fájlt, és ez a formátum legyen * _ZFIR0069_ $ date .TXT

    Üdvözlet.

  8.   pepG dijo

    Mi a különbség a find * -típus d és a find / home / pepe -típus d között? Szeretném felsorolni a fiókom könyvtárait, és nem értem, miért az első helyesen, a második miért nem. Segíteni

  9.   kaike dijo

    Hogyan találhatom meg a számokkal végződő fájlokat? Köszönöm