PowerShell:
עבודה עם YAML
איך לעשות:
PowerShell, כברירת מחדל, אינה מגיעה עם cmdlet מובנה לפענוח YAML, אך היא עובדת בחלקות עם YAML כאשר אתה מנצל את המודול powershell-yaml
או ממיר YAML לאובייקט של PowerShell באמצעות ConvertFrom-Json
בשילוב עם כלי כמו yq
.
שימוש במודול powershell-yaml
:
ראשית, התקן את המודול:
Install-Module -Name powershell-yaml
לקרוא קובץ YAML:
Import-Module powershell-yaml
$content = Get-Content -Path 'config.yml' -Raw
$yamlObject = ConvertFrom-Yaml -Yaml $content
Write-Output $yamlObject
לכתוב אובייקט של PowerShell לקובץ YAML:
$myObject = @{
name = "John Doe"
age = 30
languages = @("PowerShell", "Python")
}
$yamlContent = ConvertTo-Yaml -Data $myObject
$yamlContent | Out-File -FilePath 'output.yml'
דוגמה לoutput.yml
:
name: John Doe
age: 30
languages:
- PowerShell
- Python
פענוח YAML עם yq
וConvertFrom-Json
:
דרך נוספת כוללת את השימוש בyq
, מעבד שורת פקודה קל ונייד עבור YAML. yq
יכול להמיר YAML ל-JSON, אותו PowerShell יכול לנתח באופן טבעי.
ראשית, וודא שyq
מותקן במערכת שלך.
אז הרץ:
$yamlToJson = yq e -o=json ./config.yml
$jsonObject = $yamlToJson | ConvertFrom-Json
Write-Output $jsonObject
שיטה זו שימושית במיוחד למשתמשים העובדים בסביבות רב-מערכתיות או עדיפים להשתמש ב-JSON בפנים PowerShell.