Avainarvosanakirjan käyttäminen Bashissa

Avainarvosanakirjan Kayttaminen Bashissa



Bash on tehokas työkalu, jonka avulla voit automatisoida monimutkaisia ​​tehtäviä ja kirjoittaa mukautettuja komentosarjoja tietojen käsittelemiseksi. Yksi bashin hyödyllisimmistä ominaisuuksista on kyky käyttää avainarvosanakirjoja tietojen tallentamiseen ja käsittelyyn. Sanakirjojen avulla voit tallentaa ja käyttää tietoja nopeasti ja helposti, mikä tekee koodistasi tehokkaampaa. Tässä artikkelissa keskustelemme avainarvosanakirjan käyttämisestä bashissa.

Mikä on avainarvosanakirja

Avainarvosanakirja on tietorakenne, jonka avulla voit tallentaa ja käyttää tietoja avaimella. Jokaisella avaimella on vastaava arvo, joka voi olla minkä tahansa tyyppinen tieto, kuten merkkijono, kokonaisluku tai jopa muu tietorakenne, ja alla on syntaksi arvojen lisäämiseksi avaimiin, jota seuraa sanakirjan luomisen syntaksi bashissa:







julistaa -A < sanelu_nimi >



Tämä luo tyhjän sanakirjan nimeltä sanaston_nimi, jossa -A-lippu osoittaa, että kyseessä on assosiatiivinen taulukko. Kun olet luonut sanakirjan, voit lisätä siihen avaimia ja arvoja käyttämällä seuraavaa syntaksia:



< sanelu_nimi > [ < avain > ] = < arvo >





Avainarvosanakirjan käyttäminen Bashissa

Avainarvosanakirjan käyttäminen bashissa on kätevää monissa tilanteissa, kuten luotaessa valitsemaasi pääsykoodia, kuten suoritettaessa monimutkaisia ​​tai pitkiä aritmeettisia laskutoimituksia tai tallennettaessa tietoja, joita voit käyttää missä tahansa koodissa. Havainnollistaakseni avainarvosanakirjan käyttöä bashissa olen antanut kolme esimerkkiä, jotka auttavat sinua ymmärtämään, kuinka niitä käytetään, ja tässä on nämä esimerkit:

Aritmeettisen toiminnon suorittaminen avainarvosanakirjan avulla

Toinen mahdollinen avainarvosanakirjan käyttötarkoitus on se, että voidaan suorittaa useita erilaisia ​​aritmeettisia operaatioita joko monimutkaisia ​​tai yksinkertaisia, ja tässä on bash-koodi, joka suorittaa yhteen- ja vähennyslaskennan sanakirjaan tallennettujen tietojen avulla:



#!/bin/bash
# Määrittele sanakirja avainarvoparien avulla
julistaa -A my_dict
my_dict [ 'a' ] = 5
my_dict [ 'b' ] = 10
my_dict [ 'c' ] = viisitoista

# Lisää sanakirjaan kaksi arvoa
summa =$ ( ( my_dict [ 'a' ] + my_dict [ 'b' ] ) )
kaiku 'A:n ja b:n summa on: $summa '

# Vähennä yksi arvo toisesta sanakirjassa
ero =$ ( ( my_dict [ 'c' ] - my_dict [ 'a' ] ) )
kaiku 'C:n ja a:n ero on: $diff '

Ensinnäkin assosiatiivinen taulukko tai sanakirja, jonka nimi on my_dict, määritellään avainarvo-pareilla. Sitten sanakirjan kaksi arvoa, a ja b, lasketaan yhteen ja tallennetaan muuttujaan, jota kutsutaan summaksi. Lisäyksen tulos tulostetaan echo-komennolla.

Seuraavaksi yksi arvo sanakirjasta, a, vähennetään toisesta arvosta c. Vähennyksen tulos tallennetaan muuttujaan nimeltä diff, ja tulos tulostetaan echo-komennolla. Kaiken kaikkiaan tämä skripti osoittaa, kuinka sanakirjoja käytetään tietojen tallentamiseen ja käsittelemiseen Bashissa.

Tietokannan luominen avainarvosanakirjan avulla

Yksi avainarvosanakirjojen suosituimmista käyttötavoista on tietokannan luominen; se voi olla yksityiskohtia mistä tahansa, jota voit käyttää myöhemmin bash-skriptissä. Tässä olen antanut esimerkin, joka ottaa yrityksen tiedot, eikä vain sitä, että komentosarja näyttää kuinka päivittää olemassa oleva avain sanakirjassa:

#!/bin/bash
julistaa -A yhtiö = (
[ nimi ] = 'Acme Corporation'
[ sijainti ] = 'New York City, NY'
[ ala ] = 'Valmistus'
[ koko ] = 'Suuri'
[ perustettu ] = '1920'
)

# tulosta kaikki tiedot
printf 'Yritystiedot: \n '
varten avain sisään ' ${!yritys[@]} ' ; tehdä
printf '%s: %s \n ' ' $avain ' ' ${yritys[$key]} '
tehty

# muuttaa 'sijainti'-näppäimen arvoa
yhtiö [ 'sijainti' ] = 'Los Angeles, CA'

# tulosta päivitetyt tiedot
printf ' \n Päivitetyt yritystiedot: \n '
varten avain sisään ' ${!yritys[@]} ' ; tehdä
printf '%s: %s \n ' ' $avain ' ' ${yritys[$key]} '
tehty

Tämä bash-skripti määrittelee sanakirjan nimeltä yritys, joka sisältää tietoja yrityksestä, kuten sen nimen, sijainnin, toimialan, koon ja perustamisvuoden. Printf-toimintoa käytetään yrityksen tietojen näyttämiseen luettavassa muodossa. For-silmukka toistuu yrityksen sanakirjan avainten yli, ja jokaiselle avaimelle kutsutaan printf-funktio avaimella ja sitä vastaavalla arvolla argumentteina. Yrityksen sanakirja päivitetään sitten muuttamalla sijaintiavaimen arvoksi 'Los Angeles, CA'. Lopuksi yrityksen päivitetyt tiedot näytetään samassa muodossa kuin ennen toisen for-silmukan ja printf-funktion käyttöä:

Johtopäätös

Assosiatiivisten taulukoiden käyttäminen voi auttaa sinua tekemään bash-skripteistäsi tehokkaampia ja ylläpidettävämpiä, koska voit tallentaa ja hakea tietoja käyttämällä merkityksellisiä nimiä salaperäisten indeksien sijaan. Tämä artikkeli osoittaa avainarvosanakirjojen käytön Bashissa kahden esimerkin avulla.