Ez az útmutató bemutatja a legjobb parancssori eszközöket, amelyeket a szöveges fájlokban lévő megfelelő karakterláncok vagy minták keresésére használnak. Ezeket az eszközöket általában a reguláris kifejezések mellett használják - rövidítve mint REGEX - amelyek egyedi karakterláncok a keresési minta leírására.
Minden további nélkül merüljünk el.
Az első helyen a grep segédprogram - annak rövidítése Global Regular Expression Print, egy hatékony parancssori eszköz, amely jól jön, ha egy adott karakterláncot vagy mintát keres a fájlban.
Grep hajókkal modern Linux disztribúciók alapértelmezés szerint, és rugalmasságot biztosít a különböző keresési eredmények megjelenítéséhez. A grep segítségével sokféle funkciót hajthat végre, például:
A szintaxis a grep a parancs nagyon egyszerű:
$ grep minta FILE.
Például a „Linux"Egy fájlban, mondjuk hello.txt figyelmen kívül hagyva a kis- és nagybetűket, futtassa a következő parancsot:
$ grep -i Linux hello.txt.
További lehetőségek eléréséhez grep, egyszerűen olvassa el cikkünket, amely további példákat tartalmaz fejlett grep parancs példák.
Sed - rövid Stream szerkesztő -egy másik hasznos parancssori eszköz szöveg manipulálása egy szöveges fájlban. Sed nem interaktív módon keres, szűr és cserél karakterláncokat egy adott fájlban.
Alapértelmezés szerint, sed parancs kinyomtatja a kimenetet STDOUT (Standard Out), ami azt jelenti, hogy a végrehajtás eredménye a terminálra kerül nyomtatásra, nem pedig fájlba mentésre.
A Sed parancsot a következőképpen hívják meg:
$ sed -OPTIONS parancs [szerkesztendő fájl]
Például, ha le szeretné cserélni a „Unix' val vel 'Linux", Hívja elő a parancsot:
$ sed 's/Unix/Linux' hello.txt.
Ha a kimenetet a terminálra történő nyomtatás helyett át szeretné irányítani, használja az átirányítási jelet ( > )
az ábrán látható módon.
$ sed 's/Unix/Linux' hello.txt> output.txt.
A parancs kimenete mentésre kerül a output.txt fájlt a képernyőre nyomtatás helyett.
Ha további lehetőségeket szeretne kipróbálni, nézze meg újra a man oldalakat.
$ man sed.
Ack egy gyors és hordozható parancssori eszköz, amelyet Perl-ben írtak. Ack barátságos helyettesítőnek tekinthető grep segédprogram és a kimenetek vizuálisan vonzó módon jelennek meg.
Ack parancs a fájlban vagy a könyvtárban megkeresi a keresési feltételek egyezését tartalmazó sorokat. Ezután kiemeli a megfelelő sort a sorokban.
Ack képes megkülönböztetni a fájlokat fájlkiterjesztésük és bizonyos mértékig a fájlok tartalma alapján.
Ack parancs szintaxisa:
$ ack [opciók] MINTA [FÁJL ...] $ ack -f [opciók] [KÖNYVTÁR ...]
Például a keresett kifejezés kereséséhez Linux, fuss:
$ ack Linux hello.txt.
A keresőeszköz meglehetősen intelligens, és ha a felhasználó nem biztosít fájlt vagy könyvtárat, akkor az aktuális könyvtárban és alkönyvtáraiban keresi a keresési mintát.
Az alábbi példában nem biztosított fájl vagy könyvtár, de az ack automatikusan észlelte az elérhető fájlt, és megkereste a megadott egyező mintát.
$ ack Linux.
Üzembe helyezni ack futtassa a rendszeren a következő parancsot:
$ sudo apt install ack-grep [Debian/Ubuntu rendszeren] $ sudo dnf telepítse ack-grep [On CentOS/RHEL]
Awk egy teljes értékű szkriptnyelv, valamint szövegfeldolgozó és adatkezelő eszköz. A keresési mintát tartalmazó fájlokban vagy programokban keres. Ha megtalálta a karakterláncot vagy mintát, awk lépéseket tesz a mérkőzésen vagy a vonalon, és kinyomtatja az eredményeket STDOUT.
Az AWK a mintát a göndör zárójelek közé zárjuk, míg a teljes programot idézőjelek közé zárjuk.
Vegyük a legegyszerűbb példát. Tegyük fel, hogy a rendszer dátumát nyomtatja az ábrán látható módon:
$ dátum.
Tegyük fel, hogy csak az első értéket szeretné kinyomtatni, ami a hét napja. Ebben az esetben csatlakoztassa a kimenetet awk az ábrán látható módon:
$ date | awk '{print $ 1}'
A későbbi értékek megjelenítéséhez válassza el őket vesszővel az ábrán látható módon:
$ date | awk '{print $ 1, $ 2}'
A fenti parancs megjeleníti a hét napját és a hónap dátumát.
További lehetőségek eléréséhez awk, egyszerűen olvassa el a miénk awk parancssorozat.
Az ezüst kereső egy platformok közötti és nyílt forráskódú kódkeresési eszköz, amely hasonló ack de a sebességre helyezve a hangsúlyt. Lehetővé teszi, hogy a lehető legrövidebb időn belül egy adott karakterláncot keressen a fájlokban:
Szintaxis:
$ ag OPTIONS search_pattern/path/to/file.
Például a „Linux'Fájlban hello.txt hívja fel a parancsot:
$ ag Linux hello.txt.
További lehetőségekért látogasson el a man oldalakra:
$ man ag.
Végül megvan a ripgrep parancssori eszköz. Ripgrep egy platformok közötti segédprogram a regex minták kereséséhez. Sokkal gyorsabb, mint az összes korábban említett keresőeszköz, és rekurzívan keresi a könyvtárakat a megfelelő mintákért. A sebesség és a teljesítmény tekintetében egyetlen más eszköz sem tűnik ki ebből Ripgrep.
Alapértelmezés szerint, ripgrep kihagyja a bináris fájlokat/rejtett fájlokat és könyvtárakat. Ne feledje, hogy alapértelmezés szerint nem keres olyan fájlokat, amelyeket figyelmen kívül hagy .gitignore/.ignore/.rgignore fájlokat.
Ripgrep lehetővé teszi bizonyos fájltípusok keresését is. Például a keresés korlátozására Javascript fájlok futnak:
$ rg -Tsj.
A ripgrep használatának szintaxisa meglehetősen egyszerű:
$ rg [OPCIÓK] MINTA [ÚTMUTATÓ ...]
Például. A karakterlánc példányainak keresése "Linux" az aktuális könyvtárban található fájlokban futtassa a következő parancsot:
$ rg Linux.
Üzembe helyezni ripgrep futtassa a rendszeren a következő parancsokat:
$ sudo apt install ripgrep [Be Debian/Ubuntu] $ sudo pacman -S ripgrep [BeArch Linux] $ sudo zypper install ripgrep [BeOpenSuse] $ sudo dnf install ripgrep [BeCentOS/RHEL/Fedora]
További lehetőségekért látogasson el a man oldalakra:
$ man rg.
Ezek a legszélesebb körben használt parancssori eszközök a szöveg kereséséhez, szűréséhez és manipulálásához Linux alatt. Ha egyéb eszközei vannak, amelyekről úgy gondolja, hogy kimaradtunk, kérjük, ossza meg velünk a megjegyzés rovatban.