Tanuljon Linuxot

A wildcards Linuxban 10 példával magyarázható

A wildcards Linuxban 10 példával magyarázható

Helyettesítő karakterek, a.k.a. metakarakterek, isteni áldozatot jelentenek, amikor bizonyos fájlneveket kell keresni egy halom hasonló nevű fájlból. Például a Wildcards használatával a Linuxban használhatja a ls parancs,  rm parancsot, vagy bármely más Linux parancsot, több fájlban, feltéve, hogy megfelelnek a megadott feltételeknek.

Ebben az olvasmányban megvitatjuk, hogyan használhatja a helyettesítő karaktereket a Linux rendszerben a munkafolyamat egyszerűsítéséhez és produktívabbá tételéhez. De először nézzük meg gyorsan a Linux legerősebb és leggyakrabban használt helyettesítőit:

  1. Asterisk (*): A (*) a helyettesítő karakter tetszőleges számú ismeretlen karaktert jelöl. Ez akkor hasznos, ha dokumentumokat vagy fájlokat keres, de csak a nevének egy részére emlékszik.
  2. A kérdőjel (?): A (?) a helyettesítő karakter csak egy ismeretlen karaktert képvisel. Ez akkor hasznos, ha van egy hasonló nevű fájlok listája, és nem biztos néhány karakterben.
  3. Zárójeles karakterek ([]): A ([]) helyettesítő karakter - a harmadik zárójel és nem az első zárójel - arra használható, hogy illeszkedjen a zárójelben megadott karakterek bármely előfordulásához. Ez a lehetőség hasznos, ha nagy- és kisbetűs fájlokkal foglalkozik, amint később látni fogjuk.

Most már rájöttem, hogy ennek az információnak nincs értelme, ha még soha nem foglalkozott helyettesítő karakterekkel. Azonban, hogy segítsen tisztázni a zavart, összeállítottunk egy részletes útmutatót, amely 10 példát tartalmaz, hogy megbizonyosodjon arról, hogy megfelelően megérti-e a helyettesítő karakterek működését, és saját maga kezdi el használni őket.

Példák a fájlnevek egyeztetésére a helyettesítő karakterek használatával

Először is használjuk az összes különféle helyettesítő karaktert, amelyet korábban megbeszéltünk, és nézzük meg, hogyan lehet őket felhasználni a fájlnevek egyeztetésére. Ehhez a következő fájlkészletet fogjuk használni:

  1. Ez a parancs megegyezik az összes betűvel kezdődő fájlnévvel M és bármely karakter egy vagy több előfordulásával végződik.
$ ls -l M *

Kimenet:

Figyelje meg, hogy csak a nagy „M” betűvel kezdődő fájlokat illeszti össze, a „m” kisbetűket nem. 

2. Ez a parancs az összes kezdő fájlnevet átmásolja Adataim és bármely karakter egy vagy több előfordulásával végződik.

$ ls Saját adatok *

Kimenet:

3. Ez a parancs minden betűvel kezdődő fájlt meg fog egyezni M, betűvel végződik N, és bármelyik 1 karakter van közöttük.

$ ls M?N.SH

Kimenet:

4. Ez a parancs minden betűvel kezdődő fájlt meg fog egyezni M, betűvel végződik N, de ha csak 1 karakter van köztük, az a szögletes zárójelben megadott karakterek listájába tartozik [AEIOU].

$ ls M [AEIOU] N.SH

Kimenet:

4 példa a különféle helyettesítő karakterek fájlnevek összeegyeztetésére

A hatékonyság növelése érdekében keverje össze ezeket a helyettesítő karaktereket, hogy működjenek együtt, és hatékonyabban tudják elérni a fájlneveket.

  1. Itt van egy parancs, amely segít megtalálni minden olyan fájlnevet, amely 3 karakterből állhat (beleértve a karaktereket sem), amelyet követhet torta és bármely karakter egy vagy több előfordulásával végződik.
$ ls ???torta*

Kimenet:

2. Itt van egy parancs, amely megegyezik az összes olyan fájlnévvel, amely a szögletes zárójelben található bármelyik karakterrel kezdődik [MNLOP] és bármely karakter egy vagy több előfordulásával végződik.

Lássuk azt is, mi történik, ha lecseréljük [MNLOP] val vel [mnlop].

Tehát a használni kívánt parancsok a következők:

$ ls [MNLOP] *
$ ls [mnlop] *

Kimenet:

Amint láthatja, tisztában kell lennie a zárójeles helyettesítő karakterbe bevitt betűk nagy- és kisbetűivel, mivel ezek befolyásolják az eredményt.

3. Itt van egy parancs, amely minden fájlnévnek megfelel ezeknek a karaktereknek [MNLOP] elsőként e karakterek bármelyike [AEIOU] a másodikként, utána következik N, és végül bármely karakter egy vagy több előfordulásával végződik.

$ ls [MNLOP] [AEIOU] N *

Kimenet:

Figyelje meg, hogy a (*) a wildcard csak segít megtalálni a fájlnevek összes kiterjesztését.4.

Ez egy olyan parancs, amely megegyezik az összes fájlnévvel, és amely bármelyik karakter egy vagy több előfordulásával kezdődik M, utána bármely 1 karakter, majd utána következik N, majd bármely karakter egy vagy több előfordulásával végződik.

$ ls * M?N *

Kimenet:

Helyettesítő karakterek használata a karakterkészlethez

Mostanra már ismernie kell a helyettesítő karakterek működését. Most néhány olyan speciális használatra összpontosíthatunk, ahol a helyettesítő karakterek felbecsülhetetlen értékűek.

Például a zárójeles helyettesítő karakter lehetővé teszi a karakterek tartományának meghatározását a [-] ahelyett, hogy minden karaktert kiírna. Ez rendkívül hasznos lehet, ha meg akar adni egy karakterkészletet és a fájlneveket egyeztetni a karakterek helye alapján. 

Ehhez a következő fájlkészletet fogjuk használni, a képen látható módon:

Amint láthatja, az általunk létrehozott kép egy fájl listája, amely különböző Pokemon adatokat tartalmaz.

Most megtalálja az összes kezdő fájlnevet pokemon- után egy szám, majd bármely alfanumerikus karakter, ismét egy szám, majd bármely karakter egy vagy több előfordulásával végződve, a következő parancsot használhatjuk:

$ ls pokemon- [0-9] [0-9a-zA-Z] [0-9] *

Kimenet:

A rész [0–9] közötti bármely numerikus karaktert jelöli 0 nak nek 9

A következő rész [0-9a-zA-Z] tetszőleges számú karaktert jelöl 0 nak nek 9, vagy bármilyen kisbetű között a nak nek z, vagy nagybetű között A nak nek Z.

Mint ilyen, ha kikapcsolunk [0-9a-zA-Z] val vel [0-9a-z], láthatja, hogy az eredmény nem tartalmaz olyan fájlnevet, amelynek nagybetűi vannak a kijelölt helyen.

$ ls pokemon- [0-9] [0-9a-z] [0-9] *

Kimenet:

Helyettesítő karakterek használata egy karakterkészlet megtagadásához

Akárcsak megadhat egy karakterkészletet, akár egy karakterkészletet is elvethet, miközben megfelel a fájlneveknek. Itt van egy példa arra, hogyan történik:

$ ls pokemon- [0-9] [!a-z] [0-9] *

Kimenet:

Ez egyezik az összes kezdő fájlnévvel pokemon- utána bármely számjegyből áll, majd a kisbetűk kivételével bármelyik karakterből, majd bármelyik számjegyből, és végül bármely karakter egy vagy több előfordulásával végződik.

Használata [!a-z], tagadjuk az összes kisbetű halmazát. A fájlnevek minden olyan karakterhez hozzá vannak rendelve, amely nem kisbetű.

Csomagolás

Tehát ezzel véget érünk a Linux helyettesítő karakterekkel és azok használatával kapcsolatos gyors áttekintésünkön. Összefoglalva mindent, dióhéjban a csillag (*) a helyettesítő karakter akkor a leghasznosabb, ha ismeri a fájlnevet, de a kiterjesztést nem. A kérdőjel (?) helyettesítő karakter segíthet, ha elfelejt néhány fájlnév karaktert. A zárójel ([]) a helyettesítő karakter akkor hasznos, ha a keresést meghatározott karakterkészletben kívánja tartalmazni.

A legjobb parancssori játékok Linuxhoz
A parancssor nem csak a legnagyobb szövetséges a Linux használatakor, hanem a szórakozás forrása is lehet, mert sok olyan szórakoztató játék lejátszás...
A legjobb Gamepad Mapping alkalmazások Linuxhoz
Ha egy tipikus billentyűzet és egér beviteli rendszer helyett szeretnél játékokat játszani Linuxon egy játékvezérlővel, van néhány hasznos alkalmazás ...
Hasznos eszközök Linux játékosok számára
Ha szeretsz Linuxon játszani, akkor valószínű, hogy olyan alkalmazásokat és segédprogramokat használtál, mint a Wine, a Lutris és az OBS Studio a játé...