Skip to content

Wat zijn Linux-metakarakters en hoe gebruik je ze?

13 de augustus de 2021
GettyImages 1140980831 af72b60b58244f90873faf925de37be8

Een metateken is elk teken met een speciale betekenis, zoals een karaat (^), dollarteken ($) of een sterretje

. Linux heeft een behoorlijk aantal van deze metatekens en hun betekenis verschilt afhankelijk van welk Linux-commando of -programma je gebruikt.

De punt als metakarakter (.)De volledige stop (.

) geeft de huidige positie aan bij het uitvoeren van opdrachten zoals cd, find of sh. In toepassingen zoals awk, grep en sed is het een jokerteken dat een specifiek nummer van een willekeurig teken aangeeft. Als voorbeeld vindt de volgende opdracht alle MP3-bestanden in de huidige map en de bijbehorende submappen. vinden . -type f -naam ‘*.mp3’

Als u dat commando uitvoert in de huidige werkmap (pwd), ziet u de resultaten terug, ervan uitgaande dat u MP3-bestanden in een muziekmap in uw thuismap bewaart. Kijk nu naar dit commando: ps -ef | grep f..efox

Linux-punttekenDe opdracht ps -ef haalt een lijst met lopende processen op. De pijp (| ) metakarakter stuurt die lijst naar het grep-commando, dat zoekt naar elke regel in de lijst die bevatf..efox

, waarbij de punten verwijzen naar twee van elk willekeurig karakter. Als Firefox actief is, krijgt u een overeenkomst. Evenzo, als een programma met de naam fonefox of freefox wordt uitgevoerd, worden deze ook geretourneerd. Als u slechts naar één teken hoeft te zoeken, in plaats van de punt (.) metateken te gebruiken, gebruikt u de ? metakarakter. De … gebruiken ? metateken verwijst naar elk afzonderlijk teken aan het begin of aan het einde van het patroon.

Het sterretje als metakarakterhet sterretje (

*

) is een algemeen bekend metateken. Het betekent nul of meer van elk teken bij het zoeken naar een patroon. Bijvoorbeeld: ls *.flac Linux sterretje lijst De

*.flac

gedeelte van de opdracht retourneert een overeenkomst voor elke bestandsnaam die eindigt op .flac.  Op dezelfde manier kunt u de asterisk gebruiken met het grep-commando in de laatste sectie als volgt: ps -ef |  grep f*efox

Dit verschilt enigszins omdat de asterisk nul of meer betekent, dus naast het vinden van firefox, facefox en fonefox, vindt het ook flutefox, ferretfox en fefox.

Linux sterretjeDe karaat als metakarakter (^)de karaat (

^

) wordt gebruikt om het begin van een regel of een tekenreeks aan te duiden. Dus hoe wordt het gebruikt? De opdracht ls geeft de bestanden in een map als volgt weer: ls -a

Als u de bestanden in een map wilt weergeven die beginnen met een bepaalde tekenreeks, bijvoorbeeld gnome, kan de karaat worden gebruikt om die tekenreeks te specificeren.  Bijvoorbeeld: ls -a |  grep ^kabouter

Dit geeft een overzicht van de bestanden die beginnen met gnome. Als je bestanden wilt die gnome ergens in de bestandsnaam hebben, gebruik dan de asterisk.

Linux karaat karakter

In het bovenstaande voorbeeld retourneert de opdracht ls een lijst met bestandsnamen en geeft die lijst door aan de opdracht grep, die wordt gebruikt voor patroonovereenkomst. Grep weet dat het karaatsymbool betekent om alles te vinden dat begint met de karakters die erna komen, en in dit geval is dat kabouter.Het dollarteken als metateken ($)Het dollarteken (

$
) heeft meerdere betekenissen als metateken in Linux. Wanneer gebruikt om patronen te matchen, betekent dit het tegenovergestelde van karaat en duidt elk patroon aan dat eindigt met een bepaalde string. Bijvoorbeeld: ls | grep png$
Hiermee worden alle bestanden weergegeven die eindigen op png. Het dollarteken wordt ook gebruikt om toegang te krijgen tot omgevingsvariabelen binnen de bash-shell. Bijvoorbeeld: #! /bin/bash

export dog=molly

echo $hond Linux dollarteken teken De lijn export dog=molly creëert een omgevingsvariabele genaamd honden stelt de waarde in molly . Gebruik het $ symbool om toegang te krijgen tot de omgevingsvariabele. Met het $ symbool, de echo $hond verklaring toont molly. Zonder dat is de

echo hond

statement geeft het woord hond weer. Ontsnappende metatekens () Soms wil je niet dat het metakarakter een speciale betekenis heeft. Als een bestand bijvoorbeeld wordt aangeroepen f.refoxen een ander bestand heet

firefox

.  Kijk nu naar het volgende commando: ls |  grep f.refox

Wat denk je dat er wordt teruggegeven? Zowel f.refox als firefox worden geretourneerd omdat beide overeenkomen met het patroon.

Linux ontsnappingskarakter[]Om alleen f.refox terug te geven, ontsnap je aan de punt om in feite een punt te betekenen, als volgt: ls | grep f.refox

Haakjes als metateken ([ ]) [abc]

U kunt haakjes gebruiken (

) bij het zoeken naar patronen.  Haakjes specificeren specifieke letters die overal in het patroon passen.  Bijvoorbeeld: ls |  grep

Hierin staan ​​alle bestanden die de letters a, b of c bevatten. Linux-haakteken [a-h]U kunt haakjes aan het begin, einde of in het midden van een zoekpatroon gebruiken. Gebruik het koppelteken (-) om naar een reeks letters te zoeken. Bijvoorbeeld, ls

*

geeft bestanden terug die beginnen met een letter van a tot en met h.Het Accent Grave MetakarakterIn de bovenstaande voorbeelden stuurt het pipe-metateken de resultaten van de ene opdracht (zoals de opdracht ls) naar een andere opdracht (zoals de opdracht grep). Een alternatieve manier om dit te doen is door het achterste citaat te gebruiken, ook wel het accentgraf genoemd (
`

), om de resultaten van een opdracht in een andere opdracht in te voegen.  Om dit te doen, slaat u het resultaat van één opdracht op in een variabele.  Bijvoorbeeld: command=`ls -lah`

echo $opdracht

Linux backtick karakter

Het voorbeeld is super gekunsteld en je zult waarschijnlijk nooit zoiets doen, maar je kunt zien hoe het werkt. Het backtick-teken voert een opdracht uit en slaat het resultaat op. Dit kan handig zijn bij het scripten, maar het is minder flexibel dan het gebruik van de pipe voor eenvoudige opdrachten. Veelvoorkomende metatekens en hun betekenis
Karakter Betekenis
. Elk karakter.
* Nul of meer tekens.
^ Zoek een lijn of tekenreeks die begint met een patroon (bijvoorbeeld ^gnome).
$ Zoek een lijn of tekenreeks die eindigt met een patroon (bijvoorbeeld gnome$).
[] [“abc”, “def”] Ontsnapt aan het volgende teken om de speciale betekenis te verwijderen. [1..9]Overeenkomen met een van een lijst of bereik (bijvoorbeeld
of ).
+ Overeenkomen met een of meer voorgaande (bijvoorbeeld grep a+).

?

  • Overeenkomen met nul of een voorgaande.

    Meer van Lifewire

  • Het Linux grep-commando

    Voorbeeldgebruik van het Linux grep-commando

  • Kleine karakters die een ethernetkabel aansluiten op een netwerkkaart.

    Hoe de Netstat-opdracht op Mac te gebruiken

  • Teamgenoten die op computer werken

    Hoe gecomprimeerde bestanden te zoeken met Linux

  • Schermafbeelding van Ubuntu Linux-desktop

    10 essentiële Linux-commando’s om door uw bestandssysteem te navigeren

  • Waar wordt het Bashrc-bestand voor gebruikt?

  • Gegevensbestanden, illustratie

    Het ls-commando gebruiken om bestanden in Linux weer te geven

  • Persoon die de Linux-opdrachtregel gebruikt

    Een bestand zoeken in Linux met behulp van de opdrachtregel

  • Ubuntu Linux-terminalvenster

    Wat doet cd ~ bij invoer in een terminalvenster?

  • Een bedrijfsmanager die op kantoor werkt

    Hoe het Linux Crontab-bestand te bewerken om taken te plannen

  • Kleurrijke kubussen die geometrische vormen vormen met meisjeshanden

    Gebruik van het “xargs”-commando

  • Eye Of Gnome-beeldviewer in Ubuntu

    Een gids voor het oog van GNOME Image Viewer

  • Stapel boeken en dvd's

    Hoe dvd’s te mounten met Ubuntu

  • Kopiëren

    Hoe Linux te gebruiken om bestanden en mappen te kopiëren

  • Jonge vrouw met een zware stapel papieren

    Bestanden verplaatsen met behulp van grafische Linux-hulpprogramma’s en opdrachtregelprogramma’s

  • Illustratie van een persoon die een Linux-computer gebruikt

    Symbolische koppelingen maken met het ln-commando

Een man die de Terminal-app op een MacBook Pro gebruikt.

Er is een fout opgetreden. Probeer het opnieuw. Je bent in! Bedankt voor het aanmelden. Er is een fout opgetreden. Probeer het opnieuw. Bedankt

  • voor het aanmelden.

  • Mobieltjes
  • Computers
  • Over ons
  • Reclame maken
  • Privacybeleid
  • Cookie beleid
  • Carrières
  • Redactionele richtlijnen
  • Contact
  • Gebruiksvoorwaarden
  • EU-privacy

TRUSTe

Lifewire maakt deel uit van de Dotdash-uitgeversfamilie.

Uw privacyrechten

Lifewire en onze externe partners gebruiken cookies en verwerken persoonlijke gegevens zoals unieke identificatiegegevens op basis van uw toestemming om informatie op een apparaat op te slaan en/of te openen, gepersonaliseerde advertenties weer te geven en voor inhoudsmeting, doelgroepinzicht en productontwikkeling. Klik hieronder om uw toestemmingskeuzes voor Lifewire.com te wijzigen of in te trekken, inclusief uw recht om bezwaar te maken wanneer een legitiem belang wordt gebruikt. U kunt uw instellingen op elk moment bijwerken via de link “EU-privacy” onderaan elke pagina. Deze keuzes worden wereldwijd aan onze partners gesignaleerd en hebben geen invloed op de browsegegevens. Lijst met partners (leveranciers)


Ik accepteer

Doelen weergeven