Sådan bruges en nøgleværdiordbog i Bash

Sadan Bruges En Noglevaerdiordbog I Bash



Bash er et kraftfuldt værktøj, der giver dig mulighed for at automatisere komplekse opgaver og skrive brugerdefinerede scripts til at behandle data. En af de mest nyttige funktioner ved bash er evnen til at bruge nøgleværdiordbøger til at gemme og manipulere data. Ordbøger giver dig mulighed for at gemme og få adgang til data hurtigt og nemt, hvilket gør din kode mere effektiv. I denne artikel vil vi diskutere, hvordan man bruger en nøgleværdiordbog i bash.

Hvad er en nøgleværdiordbog

En nøgleværdiordbog er en datastruktur, der giver dig mulighed for at gemme og få adgang til data efter nøgle. Hver nøgle har en tilsvarende værdi, som kan være en hvilken som helst type data, såsom en streng, heltal eller endda en anden datastruktur, og nedenfor er syntaksen til at tilføje værdier til nøgler efterfulgt af syntaksen til at oprette en ordbog i bash:







erklære -EN < dikt_navn >



Dette opretter en tom ordbog ved navn dict_name med flaget -A, der angiver, at det er et associativt array. Når du har oprettet en ordbog, kan du tilføje nøgler og værdier til den ved hjælp af følgende syntaks:



< dikt_navn > [ < nøgle > ] = < værdi >





Sådan bruger du en nøgleværdiordbog i Bash

Brug af en nøgleværdiordbog i bash er praktisk i mange scenarier, som når du genererer en adgangskode efter eget valg, som at udføre komplekse eller lange aritmetiske beregninger eller gemme detaljer, som du kan få adgang til hvor som helst i koden. Så for at demonstrere brugen af ​​nøgleværdiordbog i bash har jeg givet tre eksempler, der vil hjælpe dig med at forstå, hvordan man bruger dem, og her er disse eksempler:

Sådan udføres aritmetisk operation ved hjælp af nøgleværdiordbog

En anden mulig brug af nøgleværdi-ordbog er, at man kan udføre flere forskellige aritmetiske operationer, enten komplekse eller simple, og her er bash-koden, der udfører addition og subtraktion ved hjælp af de data, der er gemt i ordbogen:



#!/bin/bash
# Definer en ordbog med nøgle-værdi-par
erklære -EN mit_dikt
mit_dikt [ 'en' ] = 5
mit_dikt [ 'b' ] = 10
mit_dikt [ 'c' ] = femten

# Tilføj to værdier i ordbogen
sum =$ ( ( mit_dikt [ 'en' ] + min_dikt [ 'b' ] ) )
ekko 'Summen af ​​a og b er: $sum '

# Træk en værdi fra en anden i ordbogen
diff =$ ( ( mit_dikt [ 'c' ] - min_dikt [ 'en' ] ) )
ekko 'Forskellen mellem c og a er: $diff '

Først defineres en associativ matrix eller ordbog ved navn my_dict med nøgleværdi-par. Derefter lægges to værdier fra ordbogen, a og b, sammen og gemmes i en variabel kaldet sum. Resultatet af tilføjelsen udskrives ved hjælp af ekkokommandoen.

Dernæst trækkes en værdi fra ordbogen, a, fra en anden værdi, c. Resultatet af subtraktionen gemmes i en variabel kaldet diff, og resultatet udskrives ved hjælp af ekkokommandoen. Overordnet set viser dette script, hvordan man bruger ordbøger til at gemme og manipulere data i Bash.

Sådan opretter du en database ved hjælp af nøgleværdiordbog

En af de mest populære anvendelser af nøgleværdiordbøger er at oprette en database; det kunne være detaljer om alt, som du kan bruge senere i bash-scriptet. Her har jeg givet et eksempel, der tager data fra en virksomhed og ikke kun, at scriptet viser, hvordan man opdaterer en eksisterende nøgle i ordbogen:

#!/bin/bash
erklære -EN Selskab = (
[ navn ] = 'Acme Corporation'
[ Beliggenhed ] = 'New York City, NY'
[ industri ] = 'Fremstilling'
[ størrelse ] = 'Stor'
[ Grundlagt ] = '1920'
)

# udskriv alle detaljer
printf 'Virksomhedsoplysninger: \n '
til nøgle i ' ${!company[@]} ' ; gør
printf '%s: %s \n ' ' $nøgle ' ' ${company[$key]} '
Færdig

# ændre værdien af ​​'placering'-nøglen
Selskab [ 'Beliggenhed' ] = 'Los Angeles, CA'

# udskriv de opdaterede detaljer
printf ' \n Opdaterede virksomhedsoplysninger: \n '
til nøgle i ' ${!company[@]} ' ; gør
printf '%s: %s \n ' ' $nøgle ' ' ${company[$key]} '
Færdig

Dette bash-script definerer en ordbog kaldet virksomhed, der indeholder oplysninger om en virksomhed, såsom dens navn, placering, branche, størrelse og årstal for grundlaget. Printf-funktionen bruges til at vise virksomhedens detaljer i et læsbart format. For-løkken itererer over nøglerne i firmaordbogen, og for hver nøgle kaldes printf-funktionen med nøglen og dens tilsvarende værdi som argumenter. Virksomhedsordbogen opdateres derefter ved at ændre værdien af ​​placeringsnøglen til 'Los Angeles, CA'. Endelig vises de opdaterede oplysninger om virksomheden i samme format som før ved hjælp af en anden for loop og printf-funktionen:

Konklusion

Brug af associative arrays kan hjælpe dig med at gøre dine bash-scripts mere effektive og vedligeholdelige ved at tillade dig at gemme og hente data ved hjælp af meningsfulde navne frem for kryptiske indekser. Denne artikel demonstrerer brugen af ​​nøgleværdi-ordbøger i Bash ved hjælp af to eksempler.