मैं Z- शैल के लिए एक उपयोगकर्ता के गाइड में निम्नलिखित पढ़ें :
'सत्य' का एक पर्यायवाची है: ''; इस रूप में इसका उपयोग अक्सर ऐसे तर्क देने के लिए किया जाता है जिनके दुष्प्रभाव होते हैं लेकिन जिनका उपयोग नहीं किया जाना चाहिए - जैसे कुछ
: ${param:=value}
जो सभी बॉर्न शेल डेरिवेटिव में एक सामान्य मुहावरा है। पैरामीटर विस्तार में,
$param
मान मान दिया जाता है यदि यह पहले खाली था, और अन्यथा अकेला छोड़ दिया गया था। चूंकि पैरामीटर विस्तार का एकमात्र कारण था, आप:
तर्क को अनदेखा करने के लिए उपयोग करते हैं। दरअसल, शेल कमांड लाइन का निर्माण करता है, जिसके बाद जो भी वैल्यू$param
है, वह है, चाहे असाइनमेंट हुआ हो या नहीं - फिर कमांड को निष्पादित करता है; यह सिर्फ इतना होता है कि ':' उन तर्कों की ओर ध्यान नहीं देता जो इसे दिया गया था।
लेकिन मुझे यह समझ में नहीं आता है। मुझे वह :
साधन मिलता है true
, लेकिन अभिव्यक्ति में दो कॉलोन हैं। एक मामूली सवाल के रूप में, सभी बॉर्न शेल डेरिवेटिव में इस मुहावरे का इतना उपयोग क्यों किया जाता है? इससे कौन सा उद्देश्य पूरा होगा?
नोट: मैं इस मुहावरे को बाश और ज़श दोनों में देखता हूँ ।
धन्यवाद
zsh
याbash
?