Fish Shell:
עבודה עם YAML
איך לעשות:
Fish Shell אינו כולל תמיכה מובנית לפרסון של YAML, אך ניתן להשתמש בכלים צד שלישי כמו yq
(מעבד שורת פקודה קל משקל ונייד ל-YAML) כדי לטפל בנתוני YAML.
התקנת yq (אם לא הותקן בעבר):
sudo apt-get install yq
קריאת ערך מתוך קובץ YAML:
נניח שיש לכם קובץ YAML בשם config.yaml
עם התוכן הבא:
database:
host: localhost
port: 3306
כדי לקרוא את מארח המסד נתונים, תשתמשו ב:
set host (yq e '.database.host' config.yaml)
echo $host
דוגמת פלט:
localhost
עדכון ערך בקובץ YAML:
כדי לעדכן את port
ל-5432
, השתמשו ב:
yq e '.database.port = 5432' -i config.yaml
האמתו את העדכון:
yq e '.database.port' config.yaml
דוגמת פלט:
5432
כתיבת קובץ YAML חדש:
ליצירת new_config.yaml
חדש עם תוכן מוגדר מראש:
echo "webserver:
host: '127.0.0.1'
port: 8080" | yq e -P - > new_config.yaml
זה משתמש ב-yq
כדי לעבד ולהדפיס בצורה נאה (-P flag) מחרוזת לקובץ YAML חדש.
פרסון מבנים מורכבים: אם יש לכם קובץ YAML מורכב יותר ואתם צריכים לאחזר מערכים או אובייקטים מקוננים, תוכלו:
echo "servers:
- name: server1
ip: 192.168.1.101
- name: server2
ip: 192.168.1.102" > servers.yaml
yq e '.servers[].name' servers.yaml
דוגמת פלט:
server1
server2
באמצעות yq
, Fish Shell הופך את הניווט והמניפולציה במסמכי YAML לפשוטים לשימוש במגוון משימות אוטומטיות וקונפיגורציה.