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नमूना आउटपुट:
localhostYAML फ़ाइल में एक मान अपडेट करना:
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
server2yq का उपयोग करके, Fish Shell विभिन्न स्वचालन और कॉन्फ़िगरेशन कार्यों के लिए YAML दस्तावेज़ों के माध्यम से नेविगेट करना और उनको हेरफेर करना सरल बनाता है।