Ako používať slovník kľúčových hodnôt v Bash

Ako Pouzivat Slovnik Klucovych Hodnot V Bash



Bash je výkonný nástroj, ktorý vám umožňuje automatizovať zložité úlohy a písať vlastné skripty na spracovanie údajov. Jednou z najužitočnejších funkcií bash je možnosť používať slovníky kľúč-hodnota na ukladanie a manipuláciu s údajmi. Slovníky vám umožňujú rýchlo a jednoducho ukladať údaje a pristupovať k nim, vďaka čomu je váš kód efektívnejší. V tomto článku budeme diskutovať o tom, ako používať slovník kľúč-hodnota v bash.

Čo je to slovník kľúčových hodnôt

Slovník kľúč-hodnota je dátová štruktúra, ktorá vám umožňuje ukladať údaje a pristupovať k nim podľa kľúča. Každý kľúč má zodpovedajúcu hodnotu, ktorou môže byť akýkoľvek typ údajov, ako je reťazec, celé číslo alebo dokonca iná dátová štruktúra a nižšie je syntax na pridávanie hodnôt do kľúčov, po ktorej nasleduje syntax vytvorenia slovníka v bash:







vyhlásiť -A < dict_name >



Tým sa vytvorí prázdny slovník s názvom dict_name s príznakom -A, ktorý indikuje, že ide o asociatívne pole. Po vytvorení slovníka doň môžete pridať kľúče a hodnoty pomocou nasledujúcej syntaxe:



< dict_name > [ < kľúč > ] = < hodnotu >





Ako používať slovník kľúč-hodnota v Bash

Používanie slovníka kľúč-hodnota v bash je užitočné v mnohých scenároch, napríklad pri generovaní prístupového kódu podľa vlastného výberu, ako je vykonávanie zložitých alebo dlhých aritmetických výpočtov alebo ukladanie podrobností, ku ktorým máte prístup kdekoľvek v kóde. Aby som demonštroval použitie slovníka kľúč-hodnota v bash, uviedol som tri príklady, ktoré vám pomôžu pochopiť, ako ich používať, a tu sú tieto príklady:

Ako vykonať aritmetické operácie pomocou slovníka kľúč – hodnota

Ďalším možným použitím slovníka kľúč-hodnota je, že je možné vykonávať niekoľko rôznych aritmetických operácií, buď zložitých alebo jednoduchých, a tu je bash kód, ktorý vykonáva sčítanie a odčítanie pomocou údajov uložených v slovníku:



#!/bin/bash
# Definujte slovník s pármi kľúč – hodnota
vyhlásiť -A môj_dikt
môj_dikt [ 'a' ] = 5
môj_dikt [ 'b' ] = 10
môj_dikt [ 'c' ] = pätnásť

# Pridajte dve hodnoty do slovníka
súčet = $ ( ( môj_dikt [ 'a' ] + môj_dikt [ 'b' ] ) )
ozvena 'Súčet a a b je: $sum '

# Odčítajte jednu hodnotu od druhej v slovníku
dif = $ ( ( môj_dikt [ 'c' ] - môj_dikt [ 'a' ] ) )
ozvena 'Rozdiel medzi c a a je: $diff '

Najprv je pomocou párov kľúč-hodnota definované asociatívne pole alebo slovník s názvom my_dict. Potom sa dve hodnoty zo slovníka, a a b, sčítajú a uložia do premennej s názvom sum. Výsledok sčítania sa vytlačí pomocou príkazu echo.

Potom sa jedna hodnota zo slovníka, a, odčíta od inej hodnoty, c. Výsledok odčítania sa uloží do premennej s názvom diff a výsledok sa vytlačí pomocou príkazu echo. Celkovo tento skript ukazuje, ako používať slovníky na ukladanie a manipuláciu s údajmi v Bash.

Ako vytvoriť databázu pomocou slovníka kľúč-hodnota

Jedným z najpopulárnejších použití slovníkov kľúč-hodnota je vytvorenie databázy; môžu to byť detaily čohokoľvek, čo môžete neskôr použiť v bash skripte. Tu som uviedol príklad, ktorý berie údaje spoločnosti a nielen to, že skript ukazuje, ako aktualizovať existujúci kľúč v slovníku:

#!/bin/bash
vyhlásiť -A spoločnosti = (
[ názov ] = 'Acme Corporation'
[ umiestnenie ] = 'New York City, NY'
[ priemyslu ] = 'výroba'
[ veľkosť ] = 'Veľký'
[ založil ] = '1920'
)

# vytlačte všetky podrobnosti
printf 'Podrobnosti o spoločnosti: \n '
pre kľúč v ' ${!company[@]} ' ; robiť
printf '%s: %s.' \n ' ' $kľúč ' ' ${company[$key]} '
hotový

# upravte hodnotu kľúča „umiestnenie“.
spoločnosti [ 'miesto' ] = 'Los Angeles, CA'

# vytlačte aktualizované podrobnosti
printf ' \n Aktualizované údaje o spoločnosti: \n '
pre kľúč v ' ${!company[@]} ' ; robiť
printf '%s: %s.' \n ' ' $kľúč ' ' ${company[$key]} '
hotový

Tento bash skript definuje slovník s názvom company, ktorý obsahuje informácie o spoločnosti, ako je jej názov, umiestnenie, odvetvie, veľkosť a rok založenia. Funkcia printf slúži na zobrazenie detailov firmy v čitateľnom formáte. Cyklus for iteruje kľúče firemného slovníka a pre každý kľúč sa volá funkcia printf s kľúčom a jeho zodpovedajúcou hodnotou ako argumentmi. Firemný slovník sa potom aktualizuje zmenou hodnoty kľúča umiestnenia na „Los Angeles, CA“. Nakoniec sa aktualizované podrobnosti o spoločnosti zobrazia v rovnakom formáte ako pred použitím inej slučky for a funkcie printf:

Záver

Používanie asociatívnych polí vám môže pomôcť zefektívniť a spravovať vaše bash skripty tým, že vám umožní ukladať a získavať údaje pomocou zmysluplných názvov, a nie kryptických indexov. Tento článok ukazuje použitie slovníkov kľúč – hodnota v Bash pomocou dvoch príkladov.