Ajnasz Blog

ACK exclusion

ACK - better than grep, a power search tool for programmer. Azaz jobb, mint a grep, nagyon jó eszköz kereséshez.
Ugye rendes ember gyakran keres a file-jai között, azok tartalmában. Egy , az átlagosnál rendesebb ember ezt reguláris kifejezésekkel is teszi, nagyon rendes ember pedig erre grepet használja. A lusta ember viszont az ack-ot azért, mert majdnem olyan, mint a grep, csak fele annyit sem kell gépelni hozzá. Alapból rekurzív, alapból nem keres verzió kezelők könyvtárában, alapból regexpekkel dolgozik, meg még rengeteg más is lehet, de én még annyira nem ismerem.

Viszont egyetlen óriási problémám volt, hogy nem tudtam hogyan kell file-okat kihagyni a keresésből. Teszem azt van sok fileban forráskódom, meg ugyanezek a file-ok egy nagyon fájlban összehányva (a gyorsabb kiszolgálás miatt ugyebár). Én ebben a nagy file-ban nem akarok sosem keresni, de mégis hogyan lehet ezt? ack ize | grep -v nagyfile? Nem így, hanem lookbehinddal:

ack ize -G (?<!nagyfile$)

Persze ez is hosszúnak tűnhet, de van olyan, hogy .ackrc file, es akkor abba is szépen bele lehet tenni a fenti kifejezést így:

-G (?<!nagyfile$)

... és akkor nem kell majd folyton beírni.
Ha több féle file-t szeretnénk kihagyni a keresésből, akkor fel kell őket sorolni:

-G (?<!nagyfile$)(?<!nagyfile2$)(?<!nagyfile3$)

Na így már lehet hatékonyan keresni!

A fentieket nem magamtól találtam, ki, hanem blogban olvastam.

  • Del.icio.us
  • Reddit icon

Trackback URL for this post:

http://ajnasz.hu/trackback/224

Hozzászólás

  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • A sorokat és bekezdéseket automatikusan felismeri a rendszer.

További információ a formázási lehetőségekről

CAPTCHA
A kérdés azt vizsgálja, hogy valós látogató, vagy robot szeretné az űrlapot beküldeni. This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Kép CAPTCHA
Enter the characters shown in the image.