Bash:
Att Arbeta med YAML
Hur man gör:
Att arbeta direkt med YAML i Bash kräver lite påhittighet eftersom Bash inte har inbyggt stöd för att tolka YAML. Du kan dock använda externa verktyg som yq
(en lätt och bärbar kommandorads-YAML-processor) för att effektivt interagera med YAML-filer. Låt oss gå igenom några vanliga operationer:
Installera yq
:
Innan du dyker in i exemplen, se till att du har yq
installerat. Du kan vanligtvis installera det från din pakethanterare, till exempel på Ubuntu:
sudo apt-get install yq
Eller du kan ladda ner det direkt från dess GitHub-repositorium.
Läsa ett värde:
Anta att du har en fil med namnet config.yaml
med följande innehåll:
databas:
värd: localhost
port: 5432
användare:
namn: admin
lösenord: hemlighet
För att läsa databasvärdet kan du använda yq
så här:
yq e '.databas.värd' config.yaml
Exempelutdata:
localhost
Uppdatera ett värde:
För att uppdatera användarens namn i config.yaml
, använd kommandot yq eval
med alternativet -i
(på plats):
yq e '.användare.namn = "nyadmin"' -i config.yaml
Verifiera ändringen med:
yq e '.användare.namn' config.yaml
Exempelutdata:
nyadmin
Lägga till ett nytt element:
För att lägga till ett nytt element under databasavsnittet, som ett nytt fält timeout
:
yq e '.databas.timeout = 30' -i config.yaml
Kontroll av innehållet i filen kommer att bekräfta tillägget.
Ta bort ett element:
För att ta bort lösenordet under användare:
yq e 'del(.användare.lösenord)' -i config.yaml
Denna operation kommer att ta bort lösenordsfältet från konfigurationen.
Kom ihåg, yq
är ett kraftfullt verktyg och har mycket mer kapaciteter, inklusive konvertering av YAML till JSON, sammanfogning av filer och ännu mer komplexa manipuleringar. Hänvisa till yq
-dokumentationen för vidare utforskning.