Linux Bash -kuoren tehokkain ominaisuus on sen kyky kiertää tiedostoja ja ohjata niiden syöttöä ja lähtöä tehokkaasti. Linux käyttää erikoismerkkejä tai symboleja, jotka tunnetaan metamerkkeinä ja jotka lisäävät komentotulkkikomentoon erityistä merkitystä tiedostonhaun ja komentojen yhteydessä.

Metamerkit ovat hyödyllisiä tiedostojen luetteloinnissa, poistamisessa ja kopioimisessa Linuxissa. Jokaisen metamerkin funktio vaihtelee kuitenkin sen mukaan, minkä komennon kanssa käytät sitä.

Tämä artikkeli tarjoaa perusteellisen oppaan erityyppisistä metamerkkeistä Linuxissa. Lopuksi selitämme, kuinka nämä erikoismerkit auttavat yhdistämään ja laajentamaan komentoja.

Linux-kuoren avulla voit tallentaa näppäinpainalluksia, kun kirjoitat komentoja käyttämällä metamerkkejä tiedostojen tai hakemistonimien välillä. Näiden merkkien avulla voit viitata tiedostoryhmään tai hakemistoon, jossa voit luetteloida, siirtää tai suorittaa muita toimintoja.

Nämä ovat joitain tiedostoa vastaavia metamerkkejä, joita Linux-kuori voi tulkita:

instagram viewer
  • * (tähti): Vastaa yhtä tai useampaa merkin esiintymää
  • ? (Kysymysmerkki): Vastaa yhtä merkkiä tai kuvion esiintymää
  • [ ] (Hakasulkeet): Vastaa mitä tahansa yhdysviivalla erotettua numeroa, symbolia tai aakkosia, jotka on määritetty hakasulkeissa

Ihanteellinen tapa harjoitella metamerkkejä Linuxissa on luoda uusi tyhjä kansio sisään /tmp hakemistosta.

sudo mkdir /tmp/meta

Siirry nyt kohtaan /tmp/meta hakemistoa käyttämällä cd-komento ja Luo uusia tyhjiä tiedostoja koskettamalla, seuraavasti:

kosketa omena.txt siideri.sh etikka.php cat.txt sitruuna.txt juice.sh monni.sh 

Käytä seuraavia komentoja testataksesi "*" metamerkki ja näytä lähdöt:

ls c*
Lähtö:
catfish.sh cat.txt cider.sh
ls c*h
Lähtö:
monni.sh siideri.sh
ls *r*
Lähtö:
siideri.sh etikka.php
sudo rm *p*

Edellä mainittu komento poistaa kaikki tiedostot, joiden nimessä on kirjain "p". Voit tarkistaa muutoksen ls-komennolla seuraavasti:

ls
Lähtö:
monni.sh cat.txt siideri.sh juice.sh sitruuna.txt

Tässä on joitain esimerkkejä "?"metamerkki mallin sovittamiseksi:

onko a?*
Lähtö:
apple.txt
Onko c? t*
Lähtö:
catfish.sh cat.txt

Viimeinen komento vastaa mitä tahansa tiedostoa, joka alkaa c ja on t kolmantena kirjaimena (cat.txt, monni.sh jne.).

Käytä nyt [av]* -vaihtoehto ls-komennolla listataksesi kaikki tiedostot, jotka alkavat jommallakummalla a tai v, seuraavasti:

ls [av]*
Lähtö:
apple.txt etikka.sh

Voit muokata yllä olevaa komentoa listaamaan vain tiedostoja, jotka päättyvät kirjaimeen t:

ls [ac]*[t]
Lähtö:
omena.txt monni.txt cat.txt

Vastaavasti voit käyttää väliviivalla erotettuja kirjaimia määrittääksesi alueita ja luettelotiedostoja seuraavasti:

ls [a-j]*
Lähtö:
omena.txt monni.sh cat.txt siideri.sh juice.sh

Bashin uudelleenohjauksen ymmärtämiseksi jokaisessa Linuxin prosessissa on tiedostokuvaajat, jotka tunnetaan nimellä vakiosyöttö (stdin/0), vakiolähtö (stdout/1), ja vakiovirhe (stderr/2). He määrittävät komennon syötteen alkuperän ja päättävät, minne tulosteet ja virheilmoitukset lähetetään.

Uudelleenohjauksen metamerkit auttavat sinua muokkaamaan näitä toimintoja ohjaamalla sisällön I/O-kulkua uudelleen. Yleensä Linux-kuori lukee komennon syötteen näppäimistöltä ja kirjoittaa lähdön näytölle. Syöttöohjauksen avulla komento voi lukea sisällön tiedostosta näppäimistön sijaan, kun taas lähdön uudelleenohjaus tallentaa komennon tulosteen tiedostoon.

Toisin sanoen Linux-tiedoston uudelleenohjauksen metamerkit mahdollistavat sisällön ohjaamisen osoitteeseen (>) ja alkaen (<) tiedostot. Kolme ensisijaista uudelleenohjauksen metamerkkiä ovat:

  1. <: Ohjaa tiedoston sisällön komentoon. Esimerkiksi komennon tulos vähemmän .bashrc on sama kuin vähemmän < .bashrc.
  2. >: Ohjaa komennon tulosteen tiedostoon. Käsky ls /etc > lists.txt tallentaa tulosteen lists.txt-tiedostoon.
  3. >>: Liittää komennon tulosteen tiedoston sisältöön.

wc tarkoittaa sanamäärää ja voit käyttää sitä näyttämään eron tiedoston välillä ennen ja jälkeen sen liittämisen tulosteeseen.

Aiheeseen liittyvä: Standardin I/O: n ymmärtäminen Linuxissa

Aaltosulkeiden laajennusmetamerkin avulla voit laajentaa merkkejä hakemistojen, tiedostonimien tai muiden komentoriviargumenttien välillä. Voit esimerkiksi luoda uuden hakemiston ahdin sisällä /tmp kansio ja luo tiedostojoukko kosketuskomennolla seuraavasti:

sudo mkdir /tmp/brace; cd /tmp/brace
kosketustesti{1,2,3,4,5}

Nyt voit tarkistaa, loiko kosketus tiedostot vai ei, käyttämällä ls-komentoa.

ls
Lähtö:
testi1 testi2 testi3 testi4 testi5

Voit määrittää useita luetteloita luodaksesi tiedostonimiä luettelon elementtien yhdistelmien perusteella. Esimerkiksi:

kosketa {omena, siideri, etikka}.{hedelmä, neste, hapan}
kosketa {a, b, c}.{1,2,3}

Viimeinen komento luo seuraavat tiedostot nykyiseen hakemistoon:

Ensimmäinen komento käyttää kahta aaltosulkeiden sarjaa yhdistääkseen kunkin joukon tiedostonimiä toiseen. Voit myös kirjoittaa viimeisen komennon muodossa kosketa {a..c}.{1..3} määrittääksesi alueen a: n ja c: n ja 1:n ja 3:n välillä.

Tiedostojen luomisen lisäksi voit käyttää aaltosulkeiden laajennusta tiedostojen poistamiseen tai kopioimiseen muihin paikkoihin.

Tässä on taulukko joistakin komennon yhdistämistä ja laajentamista varten tunnetuista metamerkeistä sekä niiden nimet, kuvaukset ja käytännön esimerkit:

Nimi Kuvaus Esimerkki
Putki (|) Yhdistää komennon lähdön tulona toiseen komentoon. cat /etc/passwd | grep-juuri
Puolipiste (;) Mahdollistaa peräkkäisten komentojen suorittamisen peräkkäin. cd /etc; ls-la; chmod +x /tmp/script.php
et-merkki (&) Suorittaa prosessit tai komennot taustalla. etsi / -perm -u=s -tyyppi f &
Dollari ($) Laajentaa aritmeettista lauseketta ja välittää sen kuoreen echo "Tämän hakemiston tiedostot ovat yhteensä: $(ls | wc -l)"
Nolla uudelleenohjaus (2>) Ohjaa normaalit virheilmoitukset /dev/null-tiedostoon your_command 2>/dev/null
Circumflex (^) Vastaa mitä tahansa kuviota, joka alkaa lausekkeella, jota seuraa ^ cd /etc/ssh; ls | grep ^s

Linuxin metamerkit tunnetaan myös jokerimerkeinä, jotka lisäävät komentoihin erityistä merkitystä ja ohjaavat niiden toimintaa. Metamerkit optimoivat käyttäjän työsuorituksen tuottavassa ympäristössä samalla kun he työskentelevät tiedostojen/hakemistojen ympärillä ja yhdistävät/laajentavat Linuxin komentotulkkikomentoja.

Lisäksi metamerkit ovat myös säännöllisten lausekkeiden rakennuspalikoita. Myös metahahmojen ja niiden käytön oppiminen on tärkeä taito, joka sinulla on, jos haluat tulla pro-Linux-käyttäjäksi.

Aloittelijan opas säännöllisiin lausekkeisiin Pythonilla

Haluatko nopeuttaa Python-työnkulkua muutamalla yksinkertaisella komennolla? Säännölliset lausekkeet ovat ystäväsi.

Lue Seuraava

JaaTweetSähköposti
Liittyvät aiheet
  • Linux
  • Linux Elementary
  • Linux Bash Shell
Kirjailijasta
Rumaisa Niazi (5 artikkelia julkaistu)

Rumaisa on freelance-kirjoittaja MUO: ssa. Hän on käyttänyt monia hattuja matemaatikosta tietoturvaharrastajaan, ja hän työskentelee nyt SOC-analyytikkona. Hänen kiinnostuksensa kuuluu lukeminen ja kirjoittaminen uusista teknologioista, Linux-jakeluista ja kaikesta tietoturvaan liittyvästä.

Lisää Rumaisa Niazilta

tilaa uutiskirjeemme

Liity uutiskirjeemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e-kirjoja ja eksklusiivisia tarjouksia!

Klikkaa tästä tilataksesi