Hur man använder en nyckelvärdesordbok i Bash

Hur Man Anvander En Nyckelvardesordbok I Bash



Bash är ett kraftfullt verktyg som låter dig automatisera komplexa uppgifter och skriva anpassade skript för att bearbeta data. En av de mest användbara funktionerna i bash är möjligheten att använda nyckel-värdesordböcker för att lagra och manipulera data. Ordböcker låter dig lagra och komma åt data snabbt och enkelt, vilket gör din kod mer effektiv. I den här artikeln kommer vi att diskutera hur man använder en nyckel-värde-ordbok i bash.

Vad är en nyckel-värdesordbok

En nyckel-värde-ordbok är en datastruktur som låter dig lagra och komma åt data via nyckel. Varje nyckel har ett motsvarande värde, som kan vara vilken typ av data som helst, såsom en sträng, heltal eller till och med en annan datastruktur och nedan är syntaxen för att lägga till värden till nycklar följt av syntaxen för att skapa en ordbok i bash:







deklarera -A < dikt_namn >



Detta skapar en tom ordlista med namnet dict_name med flaggan -A som indikerar att det är en associativ array. När du har skapat en ordbok kan du lägga till nycklar och värden till den med hjälp av följande syntax:



< dikt_namn > [ < nyckel > ] = < värde >





Hur man använder en nyckel-värdesordbok i Bash

Att använda en nyckel-värde-ordbok i bash är praktiskt i många scenarier som när du genererar ett lösenord som du själv väljer, som att utföra komplexa eller långa aritmetiska beräkningar eller spara detaljer som du kan komma åt var som helst i koden. Så för att demonstrera användningen av nyckel-värde-lexikon i bash har jag gett tre exempel som hjälper dig att förstå hur man använder dem och här är dessa exempel:

Hur man utför aritmetiska operationer med hjälp av nyckel-värdeslexikon

En annan möjlig användning av nyckel-värde-lexikon är att man kan utföra flera olika aritmetiska operationer, antingen komplexa eller enkla och här är bash-koden som utför addition och subtraktion med hjälp av data som lagras i ordboken:



#!/bin/bash
# Definiera en ordbok med nyckel-värde-par
deklarera -A mitt_dikt
mitt_dikt [ 'a' ] = 5
mitt_dikt [ 'b' ] = 10
mitt_dikt [ 'c' ] = femton

# Lägg till två värden i ordboken
belopp =$ ( ( mitt_dikt [ 'a' ] + min_dikt [ 'b' ] ) )
eko 'Summan av a och b är: $summa '

# Subtrahera ett värde från ett annat i ordboken
diff =$ ( ( mitt_dikt [ 'c' ] - min_dikt [ 'a' ] ) )
eko 'Skillnaden mellan c och a är: $diff '

Först definieras en associativ matris eller ordbok med namnet my_dict med nyckel-värdepar. Sedan läggs två värden från ordboken, a och b, samman och lagras i en variabel som kallas summa. Resultatet av tillägget skrivs ut med hjälp av ekokommandot.

Därefter subtraheras ett värde från ordboken, a, från ett annat värde, c. Resultatet av subtraktionen lagras i en variabel som kallas diff, och resultatet skrivs ut med hjälp av ekokommandot. Sammantaget visar detta skript hur man använder ordböcker för att lagra och manipulera data i Bash.

Hur man skapar en databas med nyckel-värdesordbok

En av de mest populära användningsområdena för nyckel-värde ordböcker är att skapa en databas; det kan vara detaljer om vad som helst som du kan använda senare i bash-skriptet. Här har jag gett ett exempel som tar data från ett företag och inte bara att skriptet visar hur man uppdaterar en befintlig nyckel i ordboken:

#!/bin/bash
deklarera -A företag = (
[ namn ] = 'Acme Corporation'
[ plats ] = 'New York City, NY'
[ industri ] = 'Tillverkning'
[ storlek ] = 'Stor'
[ grundad ] = '1920'
)

# skriv ut alla detaljer
printf 'Företagsinformation: \n '
för nyckel i ' ${!company[@]} ' ; do
printf '%s: %s \n ' ' $nyckel ' ' ${company[$key]} '
Gjort

# ändra värdet på 'plats'-nyckeln
företag [ 'plats' ] = 'Los Angeles, Kalifornien'

# skriv ut den uppdaterade informationen
printf ' \n Uppdaterad företagsinformation: \n '
för nyckel i ' ${!company[@]} ' ; do
printf '%s: %s \n ' ' $nyckel ' ' ${company[$key]} '
Gjort

Det här bash-skriptet definierar en ordbok som heter företag som innehåller information om ett företag, såsom dess namn, plats, bransch, storlek och år grundat. Printf-funktionen används för att visa företagets detaljer i ett läsbart format. for-loopen itererar över nycklarna i företagslexikonet, och för varje nyckel anropas printf-funktionen med nyckeln och dess motsvarande värde som argument. Företagslexikonet uppdateras sedan genom att ändra värdet på platsnyckeln till 'Los Angeles, CA'. Slutligen visas de uppdaterade uppgifterna om företaget i samma format som tidigare med en annan for loop och printf-funktionen:

Slutsats

Att använda associativa arrayer kan hjälpa dig att göra dina bash-skript mer effektiva och underhållbara, genom att du kan lagra och hämta data med hjälp av meningsfulla namn snarare än kryptiska index. Den här artikeln visar användningen av nyckel-värde-ordböcker i Bash med hjälp av två exempel.