Fish Shell:
YAML के साथ काम करना
कैसे:
Fish Shell में YAML को पार्स करने के लिए अंतर्निहित समर्थन नहीं है, लेकिन आप yq
(एक हल्का और पोर्टेबल कमांड-लाइन YAML प्रोसेसर) जैसे तृतीय-पक्ष उपकरण का उपयोग करके YAML डेटा को संभाल सकते हैं।
yq की स्थापना (अगर पहले से स्थापित नहीं है):
sudo apt-get install yq
एक YAML फाइल से मान पढ़ना:
मान लें आपके पास config.yaml
नामक एक 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 फ्लैग) एक नई 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 दस्तावेज़ों के माध्यम से नेविगेट करना और उनको हेरफेर करना सरल बनाता है।