Lær Linux

Jokertegn i Linux forklart med 10 eksempler

Jokertegn i Linux forklart med 10 eksempler

Jokertegn, en.k.en. metategn, er en gave når det gjelder å søke etter bestemte filnavn fra en haug med lignende filer. For eksempel, ved å bruke jokertegn i Linux, kan du bruke ls kommando,  rm kommando eller annen Linux-kommando for den saks skyld på flere filer så lenge de samsvarer med de definerte kriteriene.

I denne lesingen vil vi diskutere hvordan du kan bruke jokertegn i Linux for å effektivisere arbeidsflyten din og bli mer produktiv. Men først, la oss ta en rask titt på de kraftigste og mest brukte jokertegnene i Linux:

  1. Stjernen (*): The (*) jokertegn representerer et hvilket som helst antall ukjente tegn. Dette er nyttig når du søker etter dokumenter eller filer, men bare husker en del av navnet.
  2. Spørsmålstegnet (?): The (?) jokertegn representerer bare ett ukjent tegn. Dette er nyttig når du har en liste over filer med lignende navn og er usikker på noen få tegn.
  3. The Bracketed Characters ([]): The ([]) jokertegn - tredje brakett og ikke første brakett - brukes til å matche alle forekomster av tegn som er definert i parentes. Dette alternativet er praktisk når du arbeider med store og små filer, som vi vil se senere.

Nå skjønner jeg at all denne informasjonen ikke gir mening hvis du aldri har håndtert jokertegn før. For å hjelpe deg med å fjerne forvirringen, har vi imidlertid satt sammen en detaljert guide, inkludert 10 eksempler, for å sikre at du forstår funksjonen til jokertegn og begynner å bruke dem selv.

Eksempler på samsvarende filnavn ved bruk av jokertegn

For å starte, la oss bruke alle de forskjellige jokertegnene vi diskuterte tidligere, og se hvordan du bruker dem til å matche filnavn. For å gjøre dette bruker vi følgende sett med filer:

  1. Denne kommandoen vil matche alle filnavnene som begynner med bokstaven M og slutter med en eller flere forekomster av hvilken som helst karakter.
$ ls -l M *

Produksjon:

Legg merke til hvordan det bare samsvarer med filene som begynner med store bokstaver “M” og ikke små bokstaver 'm'. 

2. Denne kommandoen kopierer alle filnavnene som begynner med My-Data og slutter med en eller flere forekomster av hvilken som helst karakter.

$ ls My-Data *

Produksjon:

3. Denne kommandoen vil matche alle filer som begynner med bokstaven M, slutter med bokstaven N, og har ett tegn imellom.

$ ls M?N.sh

Produksjon:

4. Denne kommandoen vil matche alle filer som begynner med bokstaven M, slutter med bokstaven N, men å bare ha ett tegn imellom tilhører listen over tegn som er definert i parentes [AEIOU].

$ ls M [AEIOU] N.sh

Produksjon:

4 eksempler på å kombinere forskjellige jokertegn for å matche filnavn

For å turboladere effektiviteten din, kan du blande og matche disse jokertegnene for å samarbeide og være mer effektive når det gjelder å matche filnavn.

  1. Her er en kommando som hjelper deg med å finne et hvilket som helst filnavn som kan inneholde 3 tegn (inkludert ingen tegn) etterfulgt av kake og slutter med en eller flere forekomster av hvilken som helst karakter.
$ ls ???kake*

Produksjon:

2. Her er en kommando som vil matche alle filnavn som starter med noen av disse tegnene i parentes [MNLOP] og ender med en eller flere forekomster av hvilken som helst karakter.

La oss også se hva som skjer når vi bytter ut [MNLOP] med [mnlop].

Så kommandoene vi skal bruke er:

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

Produksjon:

Som du kan se, må du være oppmerksom på store og små bokstaver du skriver inn i braketten jokertegn, da det vil påvirke resultatet.

3. Her er en kommando som vil matche alle filnavn med noen av disse tegnene [MNLOP] som den første, noen av disse karakterene [AEIOU] som den andre, etterfulgt av N, og til slutt ender med en eller flere forekomster av hvilken som helst karakter.

$ ls [MNLOP] [AEIOU] N *

Produksjon:

Legg merke til hvordan (*) jokertegn hjelper bare med å finne alle utvidelser av filnavnene.4.

Her er en kommando som vil matche alle filnavn som starter med en eller flere forekomster av hvilket som helst tegn som fører til M, etterfulgt av 1 tegn, deretter etterfulgt av N, og slutter med en eller flere forekomster av hvilken som helst karakter.

$ ls * M?N *

Produksjon:

Bruke jokertegn for å matche tegnsett

Nå skal du ha en forståelse av hvordan jokertegn fungerer. Vi kan nå fokusere på noen avanserte bruksområder der jokertegn er uvurderlige.

For eksempel brakett jokertegn lar deg definere en rekke tegn ved hjelp av [-] i stedet for å skrive ut hvert tegn. Dette kan være ekstremt nyttig når du vil spesifisere et sett med tegn og matche filnavn basert på hvor tegnene vises. 

For å gjøre dette bruker vi følgende sett med filer, som vist på bildet:

Som du kan se, er bildet vi har opprettet, en liste over filer som inneholder forskjellige Pokemon-data.

Nå for å finne alle filnavnene som begynner med pokemon- etterfulgt av et tall, deretter et alfanumerisk tegn, igjen etterfulgt av et tall, og deretter ender med en eller flere forekomster av hvilket som helst tegn, kan vi bruke følgende kommando:

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

Produksjon:

Den delen [0-9] representerer alle numeriske tegn mellom 0 til 9

Neste del [0-9a-zA-Z] representerer et hvilket som helst antall tegn mellom 0 til 9, eller små bokstaver mellom en til z, eller en stor bokstav mellom EN til Z.

Som sådan, hvis vi bytter ut [0-9a-zA-Z] med [0-9a-z], du kan se at resultatet ikke inkluderer noe filnavn med store bokstaver i den angitte posisjonen.

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

Produksjon:

Bruke jokertegn for å negere et sett med tegn

Som du kan spesifisere et sett med tegn, kan du også negere et sett med tegn mens du samsvarer med filnavn. Her er et eksempel på hvordan det gjøres:

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

Produksjon:

Dette samsvarer med alle filnavnene som begynner med pokemon- etterfulgt av et numerisk tegn, deretter av et hvilket som helst annet tegn enn små bokstaver, etterfulgt av et hvilket som helst numerisk tegn, og til slutt ender med en eller flere forekomster av hvilket som helst tegn.

Ved hjelp av [!a-z], vi negerer settet med alle små bokstaver. Nå samsvares filnavnene med alle tegn som ikke er små bokstaver.

Innpakning

Så det fører oss til slutten av en rask titt på Linux jokertegn og hvordan du bruker dem. Oppsummerer alt, i et nøtteskall, stjerne (*) jokertegn er mest nyttig når du kjenner filnavnet, men ikke utvidelsen. De spørsmålstegn (?) jokertegn kan hjelpe deg hvis du glemmer noen få filnavn. De brakett ([]) jokertegn er nyttig når du vil inneholde søket ditt i et sett med definerte tegn.

Beste Linux Distros for spill i 2021
Linux-operativsystemet har kommet langt fra det originale, enkle, serverbaserte utseendet. Dette operativsystemet har forbedret seg enormt de siste år...
Hvordan fange opp og streame spilløkten din på Linux
Tidligere ble spill bare ansett som en hobby, men med tiden så spillindustrien en enorm vekst når det gjelder teknologi og antall spillere. Spillpubli...
Beste spill å spille med håndsporing
Oculus Quest introduserte nylig den gode ideen om håndsporing uten kontrollere. Med et stadig økende antall spill og aktiviteter som utfører støtte en...