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 yqEller 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: hemlighetFör att läsa databasvärdet kan du använda yq så här:
yq e '.databas.värd' config.yamlExempelutdata:
localhostUppdatera 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.yamlVerifiera ändringen med:
yq e '.användare.namn' config.yamlExempelutdata:
nyadminLä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.yamlKontroll 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.yamlDenna 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.